POJ 3126:Prime Path
Time Limit: 1000MS | Memory Limit: 65536KB | 64bit IO Format: %I64d & %I64u |
Description
The ministers of the cabinet were quite upset by the message from the Chief of Security stating that they would all have to change the four-digit room numbers
on their offices.
— It is a matter of security to change such things every now and then, to keep the enemy in the dark.
— But look, I have chosen my number 1033 for good reasons. I am the Prime minister, you know!
— I know, so therefore your new number 8179 is also a prime. You will just have to paste four new digits over the four old ones on your office door.
— No, it’s not that simple. Suppose that I change the first digit to an 8, then the number will read 8033 which is not a prime!
— I see, being the prime minister you cannot stand having a non-prime number on your door even for a few seconds.
— Correct! So I must invent a scheme for going from 1033 to 8179 by a path of prime numbers where only one digit is changed from one prime to the next prime.
Now, the minister of finance, who had been eavesdropping, intervened.
— No unnecessary expenditure, please! I happen to know that the price of a digit is one pound.
— Hmm, in that case I need a computer program to minimize the cost. You don't know some very cheap software gurus, do you?
— In fact, I do. You see, there is this programming contest going on... Help the prime minister to find the cheapest prime path between any two given four-digit primes! The first digit must be nonzero, of course. Here is a solution in the case above.
— It is a matter of security to change such things every now and then, to keep the enemy in the dark.
— But look, I have chosen my number 1033 for good reasons. I am the Prime minister, you know!
— I know, so therefore your new number 8179 is also a prime. You will just have to paste four new digits over the four old ones on your office door.
— No, it’s not that simple. Suppose that I change the first digit to an 8, then the number will read 8033 which is not a prime!
— I see, being the prime minister you cannot stand having a non-prime number on your door even for a few seconds.
— Correct! So I must invent a scheme for going from 1033 to 8179 by a path of prime numbers where only one digit is changed from one prime to the next prime.
Now, the minister of finance, who had been eavesdropping, intervened.
— No unnecessary expenditure, please! I happen to know that the price of a digit is one pound.
— Hmm, in that case I need a computer program to minimize the cost. You don't know some very cheap software gurus, do you?
— In fact, I do. You see, there is this programming contest going on... Help the prime minister to find the cheapest prime path between any two given four-digit primes! The first digit must be nonzero, of course. Here is a solution in the case above.
1033The cost of this solution is 6 pounds. Note that the digit 1 which got pasted over in step 2 can not be reused in the last step – a new 1 must be purchased.
1733
3733
3739
3779
8779
8179
Input
One line with a positive number: the number of test cases (at most 100). Then for each test case, one line with two numbers separated by a blank. Both numbers are four-digit primes (without leading zeros).
Output
One line for each case, either with a number stating the minimal cost or containing the word Impossible.
Sample Input
3 1033 8179 1373 8017 1033 1033
Sample Output
6 7 0
题意是给两个质数a和b,每次只能变a中的一位,且变完后的a也要是一个质数,问经过多少次变换能变成b。
广度优先搜索很典型了,只是还是觉得自己这样做比较麻烦,把a每一次能到达的数a‘弄到queue里面。只是一开始a'的判断TLE了,觉得是每次判断是不是质数浪费了时间。所以把从1000到10000的质数全都列了出来,这样不用一个一个判断了,在里面就是质数,不在里面就out。
我觉得其他人肯定有更好的方法,自己还是要好好学习。
代码:
#include <iostream> #include <algorithm> #include <cmath> #include <vector> #include <string> #include <queue> #include <cstring> #pragma warning(disable:4996) using namespace std; queue <int> q; int ans[10005]; int a[1065]; bool pend(int b) { int i; for(i=0;i<=1060;i++) { if(b==a[i]) return true; } return false; } int main() { a[0]=1009; a[1]=1013; a[2]=1019; a[3]=1021; a[4]=1031; a[5]=1033; a[6]=1039; a[7]=1049; a[8]=1051; a[9]=1061; a[10]=1063; a[11]=1069; a[12]=1087; a[13]=1091; a[14]=1093; a[15]=1097; a[16]=1103; a[17]=1109; a[18]=1117; a[19]=1123; a[20]=1129; a[21]=1151; a[22]=1153; a[23]=1163; a[24]=1171; a[25]=1181; a[26]=1187; a[27]=1193; a[28]=1201; a[29]=1213; a[30]=1217; a[31]=1223; a[32]=1229; a[33]=1231; a[34]=1237; a[35]=1249; a[36]=1259; a[37]=1277; a[38]=1279; a[39]=1283; a[40]=1289; a[41]=1291; a[42]=1297; a[43]=1301; a[44]=1303; a[45]=1307; a[46]=1319; a[47]=1321; a[48]=1327; a[49]=1361; a[50]=1367; a[51]=1373; a[52]=1381; a[53]=1399; a[54]=1409; a[55]=1423; a[56]=1427; a[57]=1429; a[58]=1433; a[59]=1439; a[60]=1447; a[61]=1451; a[62]=1453; a[63]=1459; a[64]=1471; a[65]=1481; a[66]=1483; a[67]=1487; a[68]=1489; a[69]=1493; a[70]=1499; a[71]=1511; a[72]=1523; a[73]=1531; a[74]=1543; a[75]=1549; a[76]=1553; a[77]=1559; a[78]=1567; a[79]=1571; a[80]=1579; a[81]=1583; a[82]=1597; a[83]=1601; a[84]=1607; a[85]=1609; a[86]=1613; a[87]=1619; a[88]=1621; a[89]=1627; a[90]=1637; a[91]=1657; a[92]=1663; a[93]=1667; a[94]=1669; a[95]=1693; a[96]=1697; a[97]=1699; a[98]=1709; a[99]=1721; a[100]=1723; a[101]=1733; a[102]=1741; a[103]=1747; a[104]=1753; a[105]=1759; a[106]=1777; a[107]=1783; a[108]=1787; a[109]=1789; a[110]=1801; a[111]=1811; a[112]=1823; a[113]=1831; a[114]=1847; a[115]=1861; a[116]=1867; a[117]=1871; a[118]=1873; a[119]=1877; a[120]=1879; a[121]=1889; a[122]=1901; a[123]=1907; a[124]=1913; a[125]=1931; a[126]=1933; a[127]=1949; a[128]=1951; a[129]=1973; a[130]=1979; a[131]=1987; a[132]=1993; a[133]=1997; a[134]=1999; a[135]=2003; a[136]=2011; a[137]=2017; a[138]=2027; a[139]=2029; a[140]=2039; a[141]=2053; a[142]=2063; a[143]=2069; a[144]=2081; a[145]=2083; a[146]=2087; a[147]=2089; a[148]=2099; a[149]=2111; a[150]=2113; a[151]=2129; a[152]=2131; a[153]=2137; a[154]=2141; a[155]=2143; a[156]=2153; a[157]=2161; a[158]=2179; a[159]=2203; a[160]=2207; a[161]=2213; a[162]=2221; a[163]=2237; a[164]=2239; a[165]=2243; a[166]=2251; a[167]=2267; a[168]=2269; a[169]=2273; a[170]=2281; a[171]=2287; a[172]=2293; a[173]=2297; a[174]=2309; a[175]=2311; a[176]=2333; a[177]=2339; a[178]=2341; a[179]=2347; a[180]=2351; a[181]=2357; a[182]=2371; a[183]=2377; a[184]=2381; a[185]=2383; a[186]=2389; a[187]=2393; a[188]=2399; a[189]=2411; a[190]=2417; a[191]=2423; a[192]=2437; a[193]=2441; a[194]=2447; a[195]=2459; a[196]=2467; a[197]=2473; a[198]=2477; a[199]=2503; a[200]=2521; a[201]=2531; a[202]=2539; a[203]=2543; a[204]=2549; a[205]=2551; a[206]=2557; a[207]=2579; a[208]=2591; a[209]=2593; a[210]=2609; a[211]=2617; a[212]=2621; a[213]=2633; a[214]=2647; a[215]=2657; a[216]=2659; a[217]=2663; a[218]=2671; a[219]=2677; a[220]=2683; a[221]=2687; a[222]=2689; a[223]=2693; a[224]=2699; a[225]=2707; a[226]=2711; a[227]=2713; a[228]=2719; a[229]=2729; a[230]=2731; a[231]=2741; a[232]=2749; a[233]=2753; a[234]=2767; a[235]=2777; a[236]=2789; a[237]=2791; a[238]=2797; a[239]=2801; a[240]=2803; a[241]=2819; a[242]=2833; a[243]=2837; a[244]=2843; a[245]=2851; a[246]=2857; a[247]=2861; a[248]=2879; a[249]=2887; a[250]=2897; a[251]=2903; a[252]=2909; a[253]=2917; a[254]=2927; a[255]=2939; a[256]=2953; a[257]=2957; a[258]=2963; a[259]=2969; a[260]=2971; a[261]=2999; a[262]=3001; a[263]=3011; a[264]=3019; a[265]=3023; a[266]=3037; a[267]=3041; a[268]=3049; a[269]=3061; a[270]=3067; a[271]=3079; a[272]=3083; a[273]=3089; a[274]=3109; a[275]=3119; a[276]=3121; a[277]=3137; a[278]=3163; a[279]=3167; a[280]=3169; a[281]=3181; a[282]=3187; a[283]=3191; a[284]=3203; a[285]=3209; a[286]=3217; a[287]=3221; a[288]=3229; a[289]=3251; a[290]=3253; a[291]=3257; a[292]=3259; a[293]=3271; a[294]=3299; a[295]=3301; a[296]=3307; a[297]=3313; a[298]=3319; a[299]=3323; a[300]=3329; a[301]=3331; a[302]=3343; a[303]=3347; a[304]=3359; a[305]=3361; a[306]=3371; a[307]=3373; a[308]=3389; a[309]=3391; a[310]=3407; a[311]=3413; a[312]=3433; a[313]=3449; a[314]=3457; a[315]=3461; a[316]=3463; a[317]=3467; a[318]=3469; a[319]=3491; a[320]=3499; a[321]=3511; a[322]=3517; a[323]=3527; a[324]=3529; a[325]=3533; a[326]=3539; a[327]=3541; a[328]=3547; a[329]=3557; a[330]=3559; a[331]=3571; a[332]=3581; a[333]=3583; a[334]=3593; a[335]=3607; a[336]=3613; a[337]=3617; a[338]=3623; a[339]=3631; a[340]=3637; a[341]=3643; a[342]=3659; a[343]=3671; a[344]=3673; a[345]=3677; a[346]=3691; a[347]=3697; a[348]=3701; a[349]=3709; a[350]=3719; a[351]=3727; a[352]=3733; a[353]=3739; a[354]=3761; a[355]=3767; a[356]=3769; a[357]=3779; a[358]=3793; a[359]=3797; a[360]=3803; a[361]=3821; a[362]=3823; a[363]=3833; a[364]=3847; a[365]=3851; a[366]=3853; a[367]=3863; a[368]=3877; a[369]=3881; a[370]=3889; a[371]=3907; a[372]=3911; a[373]=3917; a[374]=3919; a[375]=3923; a[376]=3929; a[377]=3931; a[378]=3943; a[379]=3947; a[380]=3967; a[381]=3989; a[382]=4001; a[383]=4003; a[384]=4007; a[385]=4013; a[386]=4019; a[387]=4021; a[388]=4027; a[389]=4049; a[390]=4051; a[391]=4057; a[392]=4073; a[393]=4079; a[394]=4091; a[395]=4093; a[396]=4099; a[397]=4111; a[398]=4127; a[399]=4129; a[400]=4133; a[401]=4139; a[402]=4153; a[403]=4157; a[404]=4159; a[405]=4177; a[406]=4201; a[407]=4211; a[408]=4217; a[409]=4219; a[410]=4229; a[411]=4231; a[412]=4241; a[413]=4243; a[414]=4253; a[415]=4259; a[416]=4261; a[417]=4271; a[418]=4273; a[419]=4283; a[420]=4289; a[421]=4297; a[422]=4327; a[423]=4337; a[424]=4339; a[425]=4349; a[426]=4357; a[427]=4363; a[428]=4373; a[429]=4391; a[430]=4397; a[431]=4409; a[432]=4421; a[433]=4423; a[434]=4441; a[435]=4447; a[436]=4451; a[437]=4457; a[438]=4463; a[439]=4481; a[440]=4483; a[441]=4493; a[442]=4507; a[443]=4513; a[444]=4517; a[445]=4519; a[446]=4523; a[447]=4547; a[448]=4549; a[449]=4561; a[450]=4567; a[451]=4583; a[452]=4591; a[453]=4597; a[454]=4603; a[455]=4621; a[456]=4637; a[457]=4639; a[458]=4643; a[459]=4649; a[460]=4651; a[461]=4657; a[462]=4663; a[463]=4673; a[464]=4679; a[465]=4691; a[466]=4703; a[467]=4721; a[468]=4723; a[469]=4729; a[470]=4733; a[471]=4751; a[472]=4759; a[473]=4783; a[474]=4787; a[475]=4789; a[476]=4793; a[477]=4799; a[478]=4801; a[479]=4813; a[480]=4817; a[481]=4831; a[482]=4861; a[483]=4871; a[484]=4877; a[485]=4889; a[486]=4903; a[487]=4909; a[488]=4919; a[489]=4931; a[490]=4933; a[491]=4937; a[492]=4943; a[493]=4951; a[494]=4957; a[495]=4967; a[496]=4969; a[497]=4973; a[498]=4987; a[499]=4993; a[500]=4999; a[501]=5003; a[502]=5009; a[503]=5011; a[504]=5021; a[505]=5023; a[506]=5039; a[507]=5051; a[508]=5059; a[509]=5077; a[510]=5081; a[511]=5087; a[512]=5099; a[513]=5101; a[514]=5107; a[515]=5113; a[516]=5119; a[517]=5147; a[518]=5153; a[519]=5167; a[520]=5171; a[521]=5179; a[522]=5189; a[523]=5197; a[524]=5209; a[525]=5227; a[526]=5231; a[527]=5233; a[528]=5237; a[529]=5261; a[530]=5273; a[531]=5279; a[532]=5281; a[533]=5297; a[534]=5303; a[535]=5309; a[536]=5323; a[537]=5333; a[538]=5347; a[539]=5351; a[540]=5381; a[541]=5387; a[542]=5393; a[543]=5399; a[544]=5407; a[545]=5413; a[546]=5417; a[547]=5419; a[548]=5431; a[549]=5437; a[550]=5441; a[551]=5443; a[552]=5449; a[553]=5471; a[554]=5477; a[555]=5479; a[556]=5483; a[557]=5501; a[558]=5503; a[559]=5507; a[560]=5519; a[561]=5521; a[562]=5527; a[563]=5531; a[564]=5557; a[565]=5563; a[566]=5569; a[567]=5573; a[568]=5581; a[569]=5591; a[570]=5623; a[571]=5639; a[572]=5641; a[573]=5647; a[574]=5651; a[575]=5653; a[576]=5657; a[577]=5659; a[578]=5669; a[579]=5683; a[580]=5689; a[581]=5693; a[582]=5701; a[583]=5711; a[584]=5717; a[585]=5737; a[586]=5741; a[587]=5743; a[588]=5749; a[589]=5779; a[590]=5783; a[591]=5791; a[592]=5801; a[593]=5807; a[594]=5813; a[595]=5821; a[596]=5827; a[597]=5839; a[598]=5843; a[599]=5849; a[600]=5851; a[601]=5857; a[602]=5861; a[603]=5867; a[604]=5869; a[605]=5879; a[606]=5881; a[607]=5897; a[608]=5903; a[609]=5923; a[610]=5927; a[611]=5939; a[612]=5953; a[613]=5981; a[614]=5987; a[615]=6007; a[616]=6011; a[617]=6029; a[618]=6037; a[619]=6043; a[620]=6047; a[621]=6053; a[622]=6067; a[623]=6073; a[624]=6079; a[625]=6089; a[626]=6091; a[627]=6101; a[628]=6113; a[629]=6121; a[630]=6131; a[631]=6133; a[632]=6143; a[633]=6151; a[634]=6163; a[635]=6173; a[636]=6197; a[637]=6199; a[638]=6203; a[639]=6211; a[640]=6217; a[641]=6221; a[642]=6229; a[643]=6247; a[644]=6257; a[645]=6263; a[646]=6269; a[647]=6271; a[648]=6277; a[649]=6287; a[650]=6299; a[651]=6301; a[652]=6311; a[653]=6317; a[654]=6323; a[655]=6329; a[656]=6337; a[657]=6343; a[658]=6353; a[659]=6359; a[660]=6361; a[661]=6367; a[662]=6373; a[663]=6379; a[664]=6389; a[665]=6397; a[666]=6421; a[667]=6427; a[668]=6449; a[669]=6451; a[670]=6469; a[671]=6473; a[672]=6481; a[673]=6491; a[674]=6521; a[675]=6529; a[676]=6547; a[677]=6551; a[678]=6553; a[679]=6563; a[680]=6569; a[681]=6571; a[682]=6577; a[683]=6581; a[684]=6599; a[685]=6607; a[686]=6619; a[687]=6637; a[688]=6653; a[689]=6659; a[690]=6661; a[691]=6673; a[692]=6679; a[693]=6689; a[694]=6691; a[695]=6701; a[696]=6703; a[697]=6709; a[698]=6719; a[699]=6733; a[700]=6737; a[701]=6761; a[702]=6763; a[703]=6779; a[704]=6781; a[705]=6791; a[706]=6793; a[707]=6803; a[708]=6823; a[709]=6827; a[710]=6829; a[711]=6833; a[712]=6841; a[713]=6857; a[714]=6863; a[715]=6869; a[716]=6871; a[717]=6883; a[718]=6899; a[719]=6907; a[720]=6911; a[721]=6917; a[722]=6947; a[723]=6949; a[724]=6959; a[725]=6961; a[726]=6967; a[727]=6971; a[728]=6977; a[729]=6983; a[730]=6991; a[731]=6997; a[732]=7001; a[733]=7013; a[734]=7019; a[735]=7027; a[736]=7039; a[737]=7043; a[738]=7057; a[739]=7069; a[740]=7079; a[741]=7103; a[742]=7109; a[743]=7121; a[744]=7127; a[745]=7129; a[746]=7151; a[747]=7159; a[748]=7177; a[749]=7187; a[750]=7193; a[751]=7207; a[752]=7211; a[753]=7213; a[754]=7219; a[755]=7229; a[756]=7237; a[757]=7243; a[758]=7247; a[759]=7253; a[760]=7283; a[761]=7297; a[762]=7307; a[763]=7309; a[764]=7321; a[765]=7331; a[766]=7333; a[767]=7349; a[768]=7351; a[769]=7369; a[770]=7393; a[771]=7411; a[772]=7417; a[773]=7433; a[774]=7451; a[775]=7457; a[776]=7459; a[777]=7477; a[778]=7481; a[779]=7487; a[780]=7489; a[781]=7499; a[782]=7507; a[783]=7517; a[784]=7523; a[785]=7529; a[786]=7537; a[787]=7541; a[788]=7547; a[789]=7549; a[790]=7559; a[791]=7561; a[792]=7573; a[793]=7577; a[794]=7583; a[795]=7589; a[796]=7591; a[797]=7603; a[798]=7607; a[799]=7621; a[800]=7639; a[801]=7643; a[802]=7649; a[803]=7669; a[804]=7673; a[805]=7681; a[806]=7687; a[807]=7691; a[808]=7699; a[809]=7703; a[810]=7717; a[811]=7723; a[812]=7727; a[813]=7741; a[814]=7753; a[815]=7757; a[816]=7759; a[817]=7789; a[818]=7793; a[819]=7817; a[820]=7823; a[821]=7829; a[822]=7841; a[823]=7853; a[824]=7867; a[825]=7873; a[826]=7877; a[827]=7879; a[828]=7883; a[829]=7901; a[830]=7907; a[831]=7919; a[832]=7927; a[833]=7933; a[834]=7937; a[835]=7949; a[836]=7951; a[837]=7963; a[838]=7993; a[839]=8009; a[840]=8011; a[841]=8017; a[842]=8039; a[843]=8053; a[844]=8059; a[845]=8069; a[846]=8081; a[847]=8087; a[848]=8089; a[849]=8093; a[850]=8101; a[851]=8111; a[852]=8117; a[853]=8123; a[854]=8147; a[855]=8161; a[856]=8167; a[857]=8171; a[858]=8179; a[859]=8191; a[860]=8209; a[861]=8219; a[862]=8221; a[863]=8231; a[864]=8233; a[865]=8237; a[866]=8243; a[867]=8263; a[868]=8269; a[869]=8273; a[870]=8287; a[871]=8291; a[872]=8293; a[873]=8297; a[874]=8311; a[875]=8317; a[876]=8329; a[877]=8353; a[878]=8363; a[879]=8369; a[880]=8377; a[881]=8387; a[882]=8389; a[883]=8419; a[884]=8423; a[885]=8429; a[886]=8431; a[887]=8443; a[888]=8447; a[889]=8461; a[890]=8467; a[891]=8501; a[892]=8513; a[893]=8521; a[894]=8527; a[895]=8537; a[896]=8539; a[897]=8543; a[898]=8563; a[899]=8573; a[900]=8581; a[901]=8597; a[902]=8599; a[903]=8609; a[904]=8623; a[905]=8627; a[906]=8629; a[907]=8641; a[908]=8647; a[909]=8663; a[910]=8669; a[911]=8677; a[912]=8681; a[913]=8689; a[914]=8693; a[915]=8699; a[916]=8707; a[917]=8713; a[918]=8719; a[919]=8731; a[920]=8737; a[921]=8741; a[922]=8747; a[923]=8753; a[924]=8761; a[925]=8779; a[926]=8783; a[927]=8803; a[928]=8807; a[929]=8819; a[930]=8821; a[931]=8831; a[932]=8837; a[933]=8839; a[934]=8849; a[935]=8861; a[936]=8863; a[937]=8867; a[938]=8887; a[939]=8893; a[940]=8923; a[941]=8929; a[942]=8933; a[943]=8941; a[944]=8951; a[945]=8963; a[946]=8969; a[947]=8971; a[948]=8999; a[949]=9001; a[950]=9007; a[951]=9011; a[952]=9013; a[953]=9029; a[954]=9041; a[955]=9043; a[956]=9049; a[957]=9059; a[958]=9067; a[959]=9091; a[960]=9103; a[961]=9109; a[962]=9127; a[963]=9133; a[964]=9137; a[965]=9151; a[966]=9157; a[967]=9161; a[968]=9173; a[969]=9181; a[970]=9187; a[971]=9199; a[972]=9203; a[973]=9209; a[974]=9221; a[975]=9227; a[976]=9239; a[977]=9241; a[978]=9257; a[979]=9277; a[980]=9281; a[981]=9283; a[982]=9293; a[983]=9311; a[984]=9319; a[985]=9323; a[986]=9337; a[987]=9341; a[988]=9343; a[989]=9349; a[990]=9371; a[991]=9377; a[992]=9391; a[993]=9397; a[994]=9403; a[995]=9413; a[996]=9419; a[997]=9421; a[998]=9431; a[999]=9433; a[1000]=9437; a[1001]=9439; a[1002]=9461; a[1003]=9463; a[1004]=9467; a[1005]=9473; a[1006]=9479; a[1007]=9491; a[1008]=9497; a[1009]=9511; a[1010]=9521; a[1011]=9533; a[1012]=9539; a[1013]=9547; a[1014]=9551; a[1015]=9587; a[1016]=9601; a[1017]=9613; a[1018]=9619; a[1019]=9623; a[1020]=9629; a[1021]=9631; a[1022]=9643; a[1023]=9649; a[1024]=9661; a[1025]=9677; a[1026]=9679; a[1027]=9689; a[1028]=9697; a[1029]=9719; a[1030]=9721; a[1031]=9733; a[1032]=9739; a[1033]=9743; a[1034]=9749; a[1035]=9767; a[1036]=9769; a[1037]=9781; a[1038]=9787; a[1039]=9791; a[1040]=9803; a[1041]=9811; a[1042]=9817; a[1043]=9829; a[1044]=9833; a[1045]=9839; a[1046]=9851; a[1047]=9857; a[1048]=9859; a[1049]=9871; a[1050]=9883; a[1051]=9887; a[1052]=9901; a[1053]=9907; a[1054]=9923; a[1055]=9929; a[1056]=9931; a[1057]=9941; a[1058]=9949; a[1059]=9967; a[1060]=9973; int Test,temp,dis,wei1,wei2,wei3,wei4,i,k; cin>>Test; while(Test--) { while(q.size())q.pop(); cin>>temp>>dis; q.push(temp); memset(ans,0,sizeof(ans)); while(1) { temp=q.front(); q.pop(); if(temp==dis) { cout<<ans[temp]<<endl; break; } wei1=temp%10; wei2=(temp%100-wei1)/10; wei4=temp/1000; wei3=temp/100-wei4*10; for(i=1;i<=9;i=i+2) { k=wei4*1000+wei3*100+wei2*10+i; if(wei1!=i &&!ans[k]&& pend(k)) { ans[k]=ans[temp]+1; q.push(k); } } for(i=0;i<=9;i++) { k=wei4*1000+wei3*100+i*10+wei1; if(wei2!=i &&!ans[k]&& pend(k)) { ans[k]=ans[temp]+1; q.push(k); } } for(i=0;i<=9;i++) { k=wei4*1000+i*100+wei2*10+wei1; if(wei3!=i &&!ans[k]&& pend(k)) { ans[k]=ans[temp]+1; q.push(k); } } for(i=1;i<=9;i++) { k=i*1000+wei3*100+wei2*10+wei1; if(wei4!=i &&!ans[k]&& pend(k)) { ans[k]=ans[temp]+1; q.push(k); } } } } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。