آقا بیکاری زد به سرمون نشستم یه برامه نوشتم
با شرطهای زیر:
۱ - که حداقل باید ۴ نقطه انتخاب باشه
۲ - هر نقطه باید یکبار انتخاب بشه
۳ - حالتهای خاص هم در نظر گرفته بشه (از یک به سه نمیتونیم بدون عبور از ۲ رد بشم؛ از یک به هفت هم همینطور و . . . .)
کد php:
#!/bin/bash
#iranled.com
#AndroidPattern
#16.01.1394
tedadkol=0
haveZero()
{
#"""check mikonim sefr dakhele adad nbashe"""
adad=$i
echo $adad | grep -q 0
}
checkUniq()
{
#"""chek mikonim ke tamame adad yekbar dar badane umade bashan"""
#"""ba in ravesh az inke har adad yekbar umade motmaen mishim"""
adad=$1
for ((i=0;i<${#adad};i++))
do
h=$(echo $adad | sed -e 's/\([[:digit:]]\)/\1\n/g' | grep -c ${adad:$i:1})
if [ $h -gt 1 ]
then
return 1
fi
done
return 0
}
checkSpec()
{
#"""check mikonim ke halathaye vije ro nadid begirim"""
adad=$1
echo $adad | grep -q "13\|17\|19\|28\|31\|37\|39\|46\|64\|71\|73\|79\|82\|91\|93\|97"
#agar peida bashe $? 0 bar migardanad
}
for ((i=0;i<9999;i++))
do
len=${#i} #tule adad
if [ $len -lt 4 ]
then
continue
fi
$(haveZero $i)
if [ $? -eq 1 ]
then
#sefr peida nashode
$(checkUniq $i)
if [ $? -eq 0 ]
then
#tamame adad yekabr estefade shodand
$(checkSpec $i) # chek vase inke halahaye vije nadashte bashim
if [ $? -eq 1 ] #peida nashode # pas dorost ast
then
#agar nadashtym ejra mihe
let tedadkol+=1
echo $i
fi
fi
fi
done > kolehalat.txt
echo $tedadkol
برای یه پترن ۴ نقطه ای کلا ۱۴۰۰ تا حالت بدست آوردم!!! ولی توی سایتها مگین باید بشه ۱۶۲۴ حالت!!
یعنی ۲۲۴ حالت رو میگن محاسبه نکردم!!
کسی میتونه یک مورد از این ۲۲۴ حالت رو بگه؟ یه نمومنه شانسی انتخاب کنید ببنید توش هست با نه! من که هرچی زدم توش بود
کل حابتهایی که ممکنه رخ بده ایناست:
کد:
1234
1235
1236
1238
1243
1245
1247
1248
1249
1253
1254
1256
1257
1258
1259
1263
1265
1267
1268
1269
1274
1275
1276
1278
1294
1295
1296
1298
1423
1425
1426
1427
1429
1432
1435
1436
1438
1452
1453
1456
1457
1458
1459
1472
1475
1476
1478
1483
1485
1486
1487
1489
1492
1495
1496
1498
1523
1524
1526
1527
1529
1532
1534
1536
1538
1542
1543
1547
1548
1549
1562
1563
1567
1568
1569
1572
1574
1576
1578
1583
1584
1586
1587
1589
1592
1594
1596
1598
1623
1624
1625
1627
1629
1632
1634
1635
1638
1652
1653
1654
1657
1658
1659
1672
1674
1675
1678
1683
1684
1685
1687
1689
1692
1694
1695
1698
1832
1834
1835
1836
1842
1843
1845
1847
1849
1852
1853
1854
1856
1857
1859
1862
1863
1865
1867
1869
1872
1874
1875
1876
1892
1894
1895
1896
2143
2145
2147
2148
2149
2153
2154
2156
2157
2158
2159
2163
2165
2167
2168
2169
2183
2184
2185
2186
2187
2189
2341
2345
2347
2348
2349
2351
2354
2356
2357
2358
2359
2361
2365
2367
2368
2369
2381
2384
2385
2386
2387
2389
2415
2416
2418
2435
2436
2438
2451
2453
2456
2457
2458
2459
2475
2476
2478
2481
2483
2485
2486
2487
2489
2495
2496
2498
2514
2516
2518
2534
2536
2538
2541
2543
2547
2548
2549
2561
2563
2567
2568
2569
2574
2576
2578
2581
2583
2584
2586
2587
2589
2594
2596
2598
2614
2615
2618
2634
2635
2638
2651
2653
2654
2657
2658
2659
2674
2675
2678
2681
2683
2684
2685
2687
2689
2694
2695
2698
2741
2743
2745
2748
2749
2751
2753
2754
2756
2758
2759
2761
2763
2765
2768
2769
2781
2783
2784
2785
2786
2789
2941
2943
2945
2947
2948
2951
2953
2954
2956
2957
2958
2961
2963
2965
2967
2968
2981
2983
2984
2985
2986
2987
3214
3215
3216
3218
3241
3245
3247
3248
3249
3251
3254
3256
3257
3258
3259
3261
3265
3267
3268
3269
3274
3275
3276
3278
3294
3295
3296
3298
3412
3415
3416
3418
3421
3425
3426
3427
3429
3451
3452
3456
3457
3458
3459
3472
3475
3476
3478
3481
3485
3486
3487
3489
3492
3495
3496
3498
3512
3514
3516
3518
3521
3524
3526
3527
3529
3541
3542
3547
3548
3549
3561
3562
3567
3568
3569
3572
3574
3576
3578
3581
3584
3586
3587
3589
3592
3594
3596
3598
3612
3614
3615
3618
3621
3624
3625
3627
3629
3651
3652
3654
3657
3658
3659
3672
3674
3675
3678
3681
3684
3685
3687
3689
3692
3694
3695
3698
3812
3814
3815
3816
3841
3842
3845
3847
3849
3851
3852
3854
3856
3857
3859
3861
3862
3865
3867
3869
3872
3874
3875
3876
3892
3894
3895
3896
4123
4125
4126
4127
4129
4152
4153
4156
4157
4158
4159
4162
4163
4165
4167
4168
4169
4183
4185
4186
4187
4189
4215
4216
4218
4235
4236
4238
4251
4253
4256
4257
4258
4259
4261
4263
4265
4267
4268
4269
4275
4276
4278
4295
4296
4298
4321
4325
4326
4327
4329
4351
4352
4356
4357
4358
4359
4361
4362
4365
4367
4368
4369
4381
4385
4386
4387
4389
4512
4516
4518
4521
4523
4526
4527
4529
4532
4536
4538
4561
4562
4563
4567
4568
4569
4572
4576
4578
4581
4583
4586
4587
4589
4592
4596
4598
4721
4723
4725
4726
4729
4751
4752
4753
4756
4758
4759
4761
4762
4763
4765
4768
4769
4781
4783
4785
4786
4789
4812
4815
4816
4832
4835
4836
4851
4852
4853
4856
4857
4859
4861
4862
4863
4865
4867
4869
4872
4875
4876
4892
4895
4896
4921
4923
4925
4926
4927
4951
4952
4953
4956
4957
4958
4961
4962
4963
4965
4967
4968
4981
4983
4985
4986
4987
5123
5124
5126
5127
5129
5142
5143
5147
5148
5149
5162
5163
5167
5168
5169
5183
5184
5186
5187
5189
5214
5216
5218
5234
5236
5238
5241
5243
5247
5248
5249
5261
5263
5267
5268
5269
5274
5276
5278
5294
5296
5298
5321
5324
5326
5327
5329
5341
5342
5347
5348
5349
5361
5362
5367
5368
5369
5381
5384
5386
5387
5389
5412
5416
5418
5421
5423
5426
5427
5429
5432
5436
5438
5472
5476
5478
5481
5483
5486
5487
5489
5492
5496
5498
5612
5614
5618
5621
5623
5624
5627
5629
5632
5634
5638
5672
5674
5678
5681
5683
5684
5687
5689
5692
5694
5698
5721
5723
5724
5726
5729
5741
5742
5743
5748
5749
5761
5762
5763
5768
5769
5781
5783
5784
5786
5789
5812
5814
5816
5832
5834
5836
5841
5842
5843
5847
5849
5861
5862
5863
5867
5869
5872
5874
5876
5892
5894
5896
5921
5923
5924
5926
5927
5941
5942
5943
5947
5948
5961
5962
5963
5967
5968
5981
5983
5984
5986
5987
6123
6124
6125
6127
6129
6142
6143
6145
6147
6148
6149
6152
6153
6154
6157
6158
6159
6183
6184
6185
6187
6189
6214
6215
6218
6234
6235
6238
6241
6243
6245
6247
6248
6249
6251
6253
6254
6257
6258
6259
6274
6275
6278
6294
6295
6298
6321
6324
6325
6327
6329
6341
6342
6345
6347
6348
6349
6351
6352
6354
6357
6358
6359
6381
6384
6385
6387
6389
6512
6514
6518
6521
6523
6524
6527
6529
6532
6534
6538
6541
6542
6543
6547
6548
6549
6572
6574
6578
6581
6583
6584
6587
6589
6592
6594
6598
6721
6723
6724
6725
6729
6741
6742
6743
6745
6748
6749
6751
6752
6753
6754
6758
6759
6781
6783
6784
6785
6789
6812
6814
6815
6832
6834
6835
6841
6842
6843
6845
6847
6849
6851
6852
6853
6854
6857
6859
6872
6874
6875
6892
6894
6895
6921
6923
6924
6925
6927
6941
6942
6943
6945
6947
6948
6951
6952
6953
6954
6957
6958
6981
6983
6984
6985
6987
7214
7215
7216
7218
7234
7235
7236
7238
7241
7243
7245
7248
7249
7251
7253
7254
7256
7258
7259
7261
7263
7265
7268
7269
7294
7295
7296
7298
7412
7415
7416
7418
7421
7423
7425
7426
7429
7432
7435
7436
7438
7451
7452
7453
7456
7458
7459
7481
7483
7485
7486
7489
7492
7495
7496
7498
7512
7514
7516
7518
7521
7523
7524
7526
7529
7532
7534
7536
7538
7541
7542
7543
7548
7549
7561
7562
7563
7568
7569
7581
7583
7584
7586
7589
7592
7594
7596
7598
7612
7614
7615
7618
7621
7623
7624
7625
7629
7632
7634
7635
7638
7651
7652
7653
7654
7658
7659
7681
7683
7684
7685
7689
7692
7694
7695
7698
7812
7814
7815
7816
7832
7834
7835
7836
7841
7842
7843
7845
7849
7851
7852
7853
7854
7856
7859
7861
7862
7863
7865
7869
7892
7894
7895
7896
8123
8124
8125
8126
8127
8129
8142
8143
8145
8147
8149
8152
8153
8154
8156
8157
8159
8162
8163
8165
8167
8169
8321
8324
8325
8326
8327
8329
8341
8342
8345
8347
8349
8351
8352
8354
8356
8357
8359
8361
8362
8365
8367
8369
8412
8415
8416
8421
8423
8425
8426
8427
8429
8432
8435
8436
8451
8452
8453
8456
8457
8459
8472
8475
8476
8492
8495
8496
8512
8514
8516
8521
8523
8524
8526
8527
8529
8532
8534
8536
8541
8542
8543
8547
8549
8561
8562
8563
8567
8569
8572
8574
8576
8592
8594
8596
8612
8614
8615
8621
8623
8624
8625
8627
8629
8632
8634
8635
8651
8652
8653
8654
8657
8659
8672
8674
8675
8692
8694
8695
8721
8723
8724
8725
8726
8729
8741
8742
8743
8745
8749
8751
8752
8753
8754
8756
8759
8761
8762
8763
8765
8769
8921
8923
8924
8925
8926
8927
8941
8942
8943
8945
8947
8951
8952
8953
8954
8956
8957
8961
8962
8963
8965
8967
9214
9215
9216
9218
9234
9235
9236
9238
9241
9243
9245
9247
9248
9251
9253
9254
9256
9257
9258
9261
9263
9265
9267
9268
9274
9275
9276
9278
9412
9415
9416
9418
9421
9423
9425
9426
9427
9432
9435
9436
9438
9451
9452
9453
9456
9457
9458
9472
9475
9476
9478
9481
9483
9485
9486
9487
9512
9514
9516
9518
9521
9523
9524
9526
9527
9532
9534
9536
9538
9541
9542
9543
9547
9548
9561
9562
9563
9567
9568
9572
9574
9576
9578
9581
9583
9584
9586
9587
9612
9614
9615
9618
9621
9623
9624
9625
9627
9632
9634
9635
9638
9651
9652
9653
9654
9657
9658
9672
9674
9675
9678
9681
9683
9684
9685
9687
9812
9814
9815
9816
9832
9834
9835
9836
9841
9842
9843
9845
9847
9851
9852
9853
9854
9856
9857
9861
9862
9863
9865
9867
9872
9874
9875
9876