今天是我入职阿里第四个年头,忆往昔,上一篇博客还是自己刚毕业在准备秋招面试的时候,真不得不感慨时间的飞逝。
偶然间打开了xdoj,发现当年自己为造福学弟学妹而创办的新生赛,在两年前已经被学弟学妹们关停了,感觉我的青春不在了
好了,话不多说,随手做几题重温一下当年的感受
1467: 魔法废物再利用炸弹1
思路:一波操作猛如虎,猛然发现就是个陷阱题,两数求异或不可能大于两数求和,因此样例就是个陷阱,实际做法直接求和即可
#include <bits/stdc++.h>using namespace std;int main() {ios_base::sync_with_stdio(false), cin.tie(nullptr);int n;cin >> n;vector<int> v(n);for (int i = 0; i < n; i++) {cin >> v[i];}int sum = 0;// int tempMax = 0;for (int i = 0; i < n; i++) {// int newTempMax = tempMax ^ v[i];// cout << newTempMax << " " << tempMax << " " << sum << endl;// if (newTempMax > tempMax) {// tempMax = newTempMax;// } else {// sum += tempMax;// tempMax = v[i];// }sum += v[i];}// sum += tempMax;cout << sum << '\n';return 0;
}
1457: creeper
思路:比大小的模拟题,直接比一下,没什么说的,直接过
#include <bits/stdc++.h>using namespace std;int main() {ios_base::sync_with_stdio(false), cin.tie(nullptr);int n, m;cin >> n >> m;int x, y, p;int maxTime = 0;for (int i = 1; i <= m; i++) {cin >> x >> y >> p;switch (p) {case 1:maxTime = max(maxTime, x);break;case 2: maxTime = max(maxTime, n - y + 1);break;case 3: maxTime = max(maxTime, n - x + 1);break;case 4: maxTime = max(maxTime, y);break;default:break;}}cout << maxTime << '\n';return 0;
}
1461: 欢欢爱数数
思路:根据取模运算的分配率【a mod k+b mod k=(a+b) mod k】,不难发现,这题主要就是寻找区间模和为0的不同区间组合。再拆解一步,就是从头开始累加模和,然后将累加模和相同的数进行分配,任选两个进行组合。根据排列组合分配公式 进行计算即可。不过这题有两个坑点,1是数较大,1e6的规模,因此要注意用长整型,特别是求模和运算的时候,求完和后一定要求模再进行分组计数,要不然很容易溢出。2就是针对模和为0的场景,这种数本身是可以单独存在的,因此组合计数时要进行特殊处理
#include <bits/stdc++.h>using namespace std;const int N = 1e6 + 5;
#define ll long longint main() {ios_base::sync_with_stdio(false), cin.tie(nullptr);int n,k;cin >> n >> k;int a, now = 0;int mod[N];for (int i = 0; i < n; i++) {cin >> a;now = (a + now) % k;mod[now] ++;}ll tempRe = mod[0];ll re = tempRe * (tempRe + 1LL) / 2LL ;for (int i = 1; i < k; i++) {tempRe = mod[i];if (tempRe > 1LL) {re += tempRe * (tempRe - 1LL) / 2LL ;}}cout << re << '\n';return 0;
}
1455: 在奇妙的数学王国中遨游
思路:题意很简单,定义了一个新函数,判断存在的数量。1e9的数据量注定无法进行暴力枚举,初步观察函数并没有发现什么特定的数学逻辑,于是直接开始打表
1, 2, 3, 10, 11, 12, 13, 20, 21, 22, 30, 31, 100, 101, 102, 103, 110, 111, 112, 113, 120, 121, 122, 130, 200,
201, 202, 210, 211, 212, 220, 221, 300, 301, 310, 311, 1000, 1001, 1002, 1003, 1010, 1011, 1012, 1013, 1020,
1021, 1022, 1030, 1031, 1100, 1101, 1102, 1103, 1110, 1111, 1112, 1113, 1120, 1121, 1122, 1130, 1200, 1201,
1202, 1210, 1211, 1212, 1220, 1300, 1301, 2000, 2001, 2002, 2010, 2011, 2012, 2020, 2021, 2022, 2100, 2101,
2102, 2110, 2111, 2120, 2121, 2200, 2201, 2202, 2210, 2211, 3000, 3001, 3010, 3011, 3100, 3101, 3110, 3111,
10000, 10001, 10002, 10003, 10010, 10011, 10012, 10013, 10020, 10021, 10022, 10030, 10031, 10100, 10101, 10102,
10103, 10110, 10111, 10112, 10113, 10120, 10121, 10122, 10130, 10200, 10201, 10202, 10210, 10211, 10212, 10220,
10221, 10300, 10310, 11000, 11001, 11002, 11003, 11010, 11011, 11012, 11013, 11020, 11021, 11022, 11030, 11031,
11100, 11101, 11102, 11103, 11110, 11111, 11112, 11113, 11120, 11121, 11122, 11130, 11200, 11201, 11202, 11210,
11211, 11220, 11300, 12000, 12001, 12002, 12010, 12011, 12012, 12020, 12100, 12101, 12102, 12110, 12111, 12120,
12200, 12201, 12202, 13000, 13001, 13010, 13011, 20000, 20001, 20002, 20010, 20011, 20012, 20020, 20021, 20022,
20100, 20101, 20102, 20110, 20111, 20112, 20120, 20121, 20122, 20200, 20201, 20210, 20211, 20220, 20221, 21000,
21001, 21002, 21010, 21011, 21020, 21021, 21100, 21101, 21102, 21110, 21111, 21200, 21201, 21210, 22000, 22001,
22002, 22010, 22011, 22020, 22100, 22101, 22102, 22110, 22111, 30000, 30001, 30010, 30011, 30100, 30101, 30110,
30111, 31000, 31001, 31010, 31011, 31100, 31101, 31110, 31111, 100000, 100001, 100002, 100003, 100010, 100011,
100012, 100013, 100020, 100021, 100022, 100030, 100031, 100100, 100101, 100102, 100103, 100110, 100111, 100112,
100113, 100120, 100121, 100122, 100130, 100200, 100201, 100202, 100210, 100211, 100212, 100220, 100221, 100300,
100301, 100310, 100311, 101000, 101001, 101002, 101003, 101010, 101011, 101012, 101013, 101020, 101021, 101022,
101030, 101031, 101100, 101101, 101102, 101103, 101110, 101111, 101112, 101113, 101120, 101121, 101122, 101130,
101200, 101201, 101202, 101210, 101211, 101212, 101220, 101300, 101301, 102000, 102001, 102002, 102010, 102011,
102012, 102020, 102021, 102022, 102100, 102101, 102102, 102110, 102111, 102120, 102121, 102200, 102210, 103000,
103001, 103100, 103101, 110000, 110001, 110002, 110003, 110010, 110011, 110012, 110013, 110020, 110021, 110022,
110030, 110031, 110100, 110101, 110102, 110103, 110110, 110111, 110112, 110113, 110120, 110121, 110122, 110130,
110200, 110201, 110202, 110210, 110211, 110212, 110220, 110221, 110300, 110310, 111000, 111001, 111002, 111003,
111010, 111011, 111012, 111013, 111020, 111021, 111022, 111030, 111031, 111100, 111101, 111102, 111103, 111110,
111111, 111112, 111120, 111121, 111130, 111200, 111201, 111202, 111210, 111211, 111220, 111300, 112000, 112001,
112002, 112010, 112011, 112012, 112020, 112100, 112101, 112102, 112110, 112111, 112200, 113000, 113001, 120000,
120001, 120002, 120010, 120011, 120012, 120020, 120100, 120101, 120102, 120110, 120111, 120112, 120120, 120200,
120201, 121000, 121001, 121002, 121010, 121011, 121020, 121100, 121101, 121102, 121110, 121111, 121200, 121201,
122000, 122001, 122002, 122010, 122011, 122020, 130000, 130001, 130010, 130011, 130100, 130101, 130110, 130111,
200000, 200001, 200002, 200010, 200011, 200012, 200020, 200021, 200022, 200100, 200101, 200102, 200110, 200111,
200112, 200120, 200121, 200122, 200200, 200201, 200202, 200210, 200211, 200212, 200220, 200221, 201000, 201001,
201002, 201010, 201011, 201012, 201020, 201021, 201022, 201100, 201101, 201110, 201111, 201120, 201121, 201200,
201201, 201210, 201211, 201220, 202000, 202001, 202002, 202010, 202011, 202012, 202100, 202101, 202110, 202111,
202200, 202210, 210000, 210001, 210002, 210010, 210011, 210020, 210021, 210100, 210101, 210102, 210110, 210111,
210200, 210201, 210202, 210210, 210211, 211000, 211001, 211002, 211010, 211011, 211020, 211021, 211100, 211101,
211110, 211111, 212000, 212001, 212002, 212010, 212011, 212100, 212101, 220000, 220001, 220002, 220010, 220011,
220020, 220100, 220101, 220102, 220110, 220111, 220200, 220201, 221000, 221001, 221002, 221010, 221011, 221020,
221100, 221101, 221110, 300000, 300001, 300010, 300011, 300100, 300101, 300110, 300111, 301000, 301001, 301010,
301011, 301100, 301101, 301110, 301111, 310000, 310001, 310010, 310011, 310100, 310101, 310110, 310111, 311000,
311001, 311010, 311011, 311100, 311101, 311110, 1000000, 1000001, 1000002, 1000003, 1000010, 1000011, 1000012,
1000013, 1000020, 1000021, 1000022, 1000030, 1000031, 1000100, 1000101, 1000102, 1000103, 1000110, 1000111,
1000112, 1000113, 1000120, 1000121, 1000122, 1000130, 1000200, 1000201, 1000202, 1000210, 1000211, 1000212,
1000220, 1000221, 1000300, 1000301, 1000310, 1000311, 1001000, 1001001, 1001002, 1001003, 1001010, 1001011,
1001012, 1001013, 1001020, 1001021, 1001022, 1001030, 1001031, 1001100, 1001101, 1001102, 1001103, 1001110,
1001111, 1001112, 1001113, 1001120, 1001121, 1001122, 1001130, 1001200, 1001201, 1001202, 1001210, 1001211,
1001212, 1001220, 1001300, 1001301, 1002000, 1002001, 1002002, 1002010, 1002011, 1002012, 1002020, 1002021,
1002022, 1002100, 1002101, 1002102, 1002110, 1002111, 1002120, 1002121, 1002200, 1002201, 1002202, 1002210,
1002211, 1003000, 1003010, 1003100, 1003110, 1010000, 1010001, 1010002, 1010003, 1010010, 1010011, 1010012,
1010013, 1010020, 1010021, 1010022, 1010030, 1010031, 1010100, 1010101, 1010102, 1010103, 1010110, 1010111,
1010112, 1010113, 1010120, 1010121, 1010122, 1010130, 1010200, 1010201, 1010202, 1010210, 1010211, 1010212,
1010220, 1010221, 1010300, 1010310, 1011000, 1011001, 1011002, 1011003, 1011010, 1011011, 1011012, 1011013,
1011020, 1011021, 1011022, 1011030, 1011031, 1011100, 1011101, 1011102, 1011103, 1011110, 1011111, 1011112,
1011113, 1011120, 1011121, 1011122, 1011130, 1011200, 1011201, 1011202, 1011210, 1011211, 1011220, 1011300,
1012000, 1012001, 1012002, 1012010, 1012011, 1012012, 1012020, 1012100, 1012101, 1012110, 1012111, 1012120,
1012200, 1013000, 1013010, 1020000, 1020001, 1020002, 1020010, 1020011, 1020012, 1020020, 1020021, 1020022,
1020100, 1020101, 1020102, 1020110, 1020111, 1020112, 1020120, 1020121, 1020122, 1020200, 1020210, 1020220,
1021000, 1021001, 1021002, 1021010, 1021011, 1021020, 1021021, 1021100, 1021101, 1021102, 1021110, 1021111,
1021200, 1021210, 1022000, 1022001, 1022002, 1022100, 1030000, 1030001, 1030010, 1030011, 1031000, 1031001,
1031010, 1031011, 1100000, 1100001, 1100002, 1100003, 1100010, 1100011, 1100012, 1100013, 1100020, 1100021,
1100022, 1100030, 1100031, 1100100, 1100101, 1100102, 1100103, 1100110, 1100111, 1100112, 1100113, 1100120,
1100121, 1100122, 1100130, 1100200, 1100201, 1100202, 1100210, 1100211, 1100212, 1100220, 1100221, 1100300,
1100301, 1100310, 1100311, 1101000, 1101001, 1101002, 1101003, 1101010, 1101011, 1101012, 1101013, 1101020,
1101021, 1101022, 1101030, 1101031, 1101100, 1101101, 1101102, 1101103, 1101110, 1101111, 1101112, 1101113,
1101120, 1101121, 1101122, 1101130, 1101200, 1101201, 1101202, 1101210, 1101211, 1101212, 1101220, 1101300,
1101301, 1102000, 1102001, 1102002, 1102010, 1102011, 1102020, 1102100, 1102101, 1102102, 1102110, 1102111,
1102120, 1102200, 1102210, 1103000, 1103100, 1110000, 1110001, 1110002, 1110003, 1110010, 1110011, 1110012,
1110013, 1110020, 1110021, 1110022, 1110030, 1110031, 1110100, 1110101, 1110102, 1110103, 1110110, 1110111,
1110112, 1110120, 1110121, 1110130, 1110200, 1110201, 1110202, 1110210, 1110211, 1110220, 1110300, 1110310,
1111000, 1111001, 1111002, 1111003, 1111010, 1111011, 1111012, 1111013, 1111020, 1111021, 1111022, 1111030,
1111031, 1111100, 1111101, 1111102, 1111103, 1111110, 1111111, 1111112, 1111120, 1111121, 1111200, 1111201,
1111202, 1111210, 1111211, 1111300, 1112000, 1112001, 1112002, 1112010, 1112011, 1112020, 1112100, 1112101,
1112110, 1112200, 1113000, 1120000, 1120001, 1120002, 1120010,
1120011, 1120012, 1120020, 1120100, 1120101, 1120102, 1120110, 1120111, 1120120, 1120200, 1121000, 1121001,
1121002, 1121010, 1121011, 1121020, 1121100, 1121101, 1121102, 1121110, 1121111, 1122000, 1122001, 1122002,
1130000, 1130001, 1130010, 1130011, 1200000, 1200001, 1200002, 1200010, 1200011, 1200012, 1200020, 1200100,
1200101, 1200102, 1200110, 1200111, 1200112, 1200120, 1200200, 1200201, 1200202, 1201000, 1201001, 1201002,
1201010, 1201011, 1201012, 1201020, 1201100, 1201101, 1201110, 1201111, 1201120, 1201200, 1201201, 1202000,
1202001, 1202002, 1202010, 1210000, 1210001, 1210002, 1210010, 1210011, 1210020, 1210100, 1210101, 1210102,
1210110, 1210111, 1210200, 1210201, 1210202, 1211000, 1211001, 1211002, 1211010, 1211011, 1211020, 1211100,
1211101, 1211110, 1211111, 1212000, 1212001, 1212002, 1212010, 1220000, 1220001, 1220002, 1220010, 1220011,
1220020, 1220100, 1220101, 1220102, 1220110, 1220200, 1300000, 1300001, 1300010, 1300011, 1300100, 1300101,
1300110, 1300111, 1301000, 1301001, 1301010, 1301011, 1301100, 1301101, 1301110, 1301111, 2000000, 2000001,
2000002, 2000010, 2000011, 2000012, 2000020, 2000021, 2000022, 2000100, 2000101, 2000102, 2000110, 2000111,
2000112, 2000120, 2000121, 2000122, 2000200, 2000201, 2000202, 2000210, 2000211, 2000212, 2000220, 2000221,
2001000, 2001001, 2001002, 2001010, 2001011, 2001012, 2001020, 2001021, 2001022, 2001100, 2001101, 2001102,
2001110, 2001111, 2001112, 2001120, 2001121, 2001122, 2001200, 2001201, 2001202, 2001210, 2001211, 2001212,
2001220, 2002000, 2002001, 2002010, 2002011, 2002020, 2002021, 2002100, 2002101, 2002110, 2002111, 2002120,
2002121, 2002200, 2002201, 2002210, 2002211, 2010000, 2010001, 2010002, 2010010, 2010011, 2010012, 2010020,
2010021, 2010022, 2010100, 2010101, 2010110, 2010111, 2010120, 2010121, 2010200, 2010201, 2010210, 2010211,
2010220, 2010221, 2011000, 2011001, 2011002, 2011010, 2011011, 2011012, 2011100, 2011101, 2011110, 2011111,
2011200, 2011201, 2011210, 2011211, 2012000, 2012001, 2012010, 2012011, 2012100, 2012110, 2012200, 2020000,
2020001, 2020002, 2020010, 2020011, 2020012, 2020020, 2020021, 2020022, 2020100, 2020101, 2020110, 2020111,
2020120, 2020121, 2021000, 2021001, 2021002, 2021010, 2021011, 2021100, 2021101, 2021110, 2021111, 2022000,
2022001, 2022100, 2100000, 2100001, 2100002, 2100010, 2100011, 2100020, 2100021, 2100100, 2100101, 2100102,
2100110, 2100111, 2100200, 2100201, 2100202, 2100210, 2100211, 2101000, 2101001, 2101002, 2101010, 2101011,
2101020, 2101021, 2101100, 2101101, 2101102, 2101110, 2101111, 2102000, 2102001, 2102010, 2102020, 2102100,
2102101, 2102110, 2110000, 2110001, 2110002, 2110010, 2110011, 2110020, 2110021, 2110100, 2110101, 2110110,
2110111, 2110200, 2110201, 2110210, 2111000, 2111001, 2111002, 2111010, 2111011, 2111100, 2111101, 2111110,
2111111, 2120000, 2120001, 2120002, 2120010, 2120011, 2120020, 2120100, 2120101, 2120110, 2121000, 2121001,
2121002, 2121010, 2121011, 2200000, 2200001, 2200002, 2200010, 2200011, 2200020, 2200100, 2200101, 2200102,
2200110, 2200111, 2200200, 2200201, 2200202, 2201000, 2201001, 2201002, 2201010, 2201011, 2201020, 2201100,
2201101, 2201110, 2201111, 2202000, 2202001, 2202010, 2210000, 2210001, 2210002, 2210010, 2210011, 2210020,
2210100, 2210101, 2210110, 2210200, 2210201, 2211000, 2211001, 2211002, 2211010, 2211011, 2211100, 2211101,
3000000, 3000001, 3000010, 3000011, 3000100, 3000101, 3000110, 3000111, 3001000, 3001001, 3001010, 3001011,
3001100, 3001101, 3001110, 3001111, 3010000, 3010001, 3010010, 3010011, 3010100, 3010101, 3010110, 3010111,
3011000, 3011001, 3011010, 3011011, 3011100, 3011101, 3011110, 3011111, 3100000, 3100001, 3100010, 3100011,
3100100, 3100101, 3100110, 3100111, 3101000, 3101001, 3101010, 3101011, 3101100, 3101101, 3101110, 3101111,
3110000, 3110001, 3110010, 3110011, 3110100, 3110101, 3110110, 3111000, 3111001, 3111010, 3111011, 3111100,
3111101, 10000000, 10000001, 10000002, 10000003, 10000010, 10000011, 10000012, 10000013, 10000020, 10000021,
10000022, 10000030, 10000031, 10000100, 10000101, 10000102, 10000103, 10000110, 10000111, 10000112, 10000113,
10000120, 10000121, 10000122, 10000130, 10000200, 10000201, 10000202, 10000210, 10000211, 10000212, 10000220,
10000221, 10000300, 10000301, 10000310, 10000311, 10001000, 10001001, 10001002, 10001003, 10001010, 10001011,
10001012, 10001013, 10001020, 10001021, 10001022, 10001030, 10001031, 10001100, 10001101, 10001102, 10001103,
10001110, 10001111, 10001112, 10001113, 10001120, 10001121, 10001122, 10001130, 10001200, 10001201, 10001202,
10001210, 10001211, 10001212, 10001220, 10001300, 10001301, 10002000, 10002001, 10002002, 10002010, 10002011,
10002012, 10002020, 10002021, 10002022, 10002100, 10002101, 10002102, 10002110, 10002111, 10002120, 10002121,
10002200, 10002201, 10002202, 10002210, 10002211, 10003000, 10003001, 10003010, 10003011, 10003100, 10003101,
10003110, 10003111, 10010000, 10010001, 10010002, 10010003, 10010010, 10010011, 10010012, 10010013, 10010020,
10010021, 10010022, 10010030, 10010031, 10010100, 10010101, 10010102, 10010103, 10010110, 10010111, 10010112,
10010113, 10010120, 10010121, 10010122, 10010130, 10010200, 10010201, 10010202, 10010210, 10010211, 10010212,
10010220, 10010221, 10010300, 10010310, 10011000, 10011001, 10011002, 10011003, 10011010, 10011011, 10011012,
10011013, 10011020, 10011021, 10011022, 10011030, 10011031, 10011100, 10011101, 10011102, 10011103, 10011110,
10011111, 10011112, 10011113, 10011120, 10011121, 10011122, 10011130, 10011200, 10011201, 10011202, 10011210,
10011211, 10011220, 10011300, 10012000, 10012001, 10012002, 10012010, 10012011, 10012012, 10012020, 10012100,
10012101, 10012102, 10012110, 10012111, 10012120, 10012200, 10012201, 10012202, 10013000, 10013001, 10013010,
10013011, 10020000, 10020001, 10020002, 10020010, 10020011, 10020012, 10020020, 10020021, 10020022, 10020100,
10020101, 10020102, 10020110, 10020111, 10020112, 10020120, 10020121, 10020122, 10020200, 10020201, 10020210,
10020211, 10020220, 10020221, 10021000, 10021001, 10021002, 10021010, 10021011, 10021020, 10021021, 10021100,
10021101, 10021102, 10021110, 10021111, 10021200, 10021201, 10021210, 10022000, 10022010, 10022020, 10022100,
10022110, 10030000, 10030001, 10030100, 10030101, 10031000, 10031001, 10031100, 10031101, 10100000, 10100001,
10100002, 10100003, 10100010, 10100011, 10100012, 10100013, 10100020, 10100021, 10100022, 10100030, 10100031,
10100100, 10100101, 10100102, 10100103, 10100110, 10100111, 10100112, 10100113, 10100120, 10100121, 10100122,
10100130, 10100200, 10100201, 10100202, 10100210, 10100211, 10100212, 10100220, 10100221, 10100300, 10100301,
10100310, 10100311, 10101000, 10101001, 10101002, 10101003, 10101010, 10101011, 10101012, 10101013, 10101020,
10101021, 10101022, 10101030, 10101031, 10101100, 10101101, 10101102, 10101103, 10101110, 10101111, 10101112,
10101113, 10101120, 10101121, 10101122, 10101130, 10101200, 10101201, 10101202, 10101210, 10101211, 10101212,
10101220, 10101300, 10101301, 10102000, 10102001, 10102002, 10102010, 10102011, 10102012, 10102020, 10102021,
10102022, 10102100, 10102101, 10102102, 10102110, 10102111, 10102120, 10102121, 10102200, 10102210, 10103000,
10103001, 10103100, 10103101, 10110000, 10110001, 10110002, 10110003, 10110010, 10110011, 10110012, 10110013,
10110020, 10110021, 10110022, 10110030, 10110031, 10110100, 10110101, 10110102, 10110103, 10110110, 10110111,
10110112, 10110113, 10110120, 10110121, 10110122, 10110130, 10110200, 10110201, 10110202, 10110210, 10110211,
10110212, 10110220, 10110221, 10110300, 10110310, 10111000, 10111001, 10111002, 10111003, 10111010, 10111011,
10111012, 10111013, 10111020, 10111021, 10111022, 10111030, 10111031, 10111100, 10111101, 10111102, 10111110,
10111111, 10111112, 10111120, 10111121, 10111130, 10111200, 10111201, 10111210, 10111211, 10111220, 10111300,
10112000, 10112001, 10112002, 10112010, 10112011, 10112012, 10112020, 10112100, 10112101, 10112110, 10112111,
10112200, 10113000, 10113001, 10120000, 10120001, 10120002, 10120010, 10120011, 10120012, 10120020, 10120100,
10120101, 10120102, 10120110, 10120111, 10120112, 10120120, 10120200, 10120201, 10121000, 10121001, 10121002,
10121010, 10121011, 10121100, 10121101, 10121110, 10121111, 10121200, 10122000, 10130000, 10130001, 10130100,
10130101, 10200000, 10200001, 10200002, 10200010, 10200011, 10200012, 10200020, 10200021, 10200022, 10200100,
10200101, 10200102, 10200110, 10200111, 10200112, 10200120, 10200121, 10200122, 10200200, 10200210, 10200220,
10201000, 10201001, 10201002, 10201010, 10201011, 10201012, 10201020, 10201021, 10201022, 10201100, 10201101,
10201110, 10201111, 10201120, 10201121, 10201200, 10201210, 10201220, 10202000, 10202001, 10202002, 10202100,
10202101, 10202200, 10210000, 10210001, 10210002, 10210010, 10210011, 10210020, 10210021, 10210100, 10210101,
10210102, 10210110, 10210111, 10210200, 10210210, 10211000, 10211001, 10211002, 10211010, 10211011, 10211020,
10211021, 10211100, 10211101, 10211110, 10211111, 10212000, 10212001, 10212002, 10212100, 10220000, 10220001,
10220002, 10220010, 10220011, 10220020, 10221000, 10221001, 10221002, 10300000, 10300001, 10300010, 10300011,
10300100, 10300101, 10300110, 10300111, 10310000, 10310001, 10310010, 10310011, 10310100, 10310101, 10310110,
10310111, 11000000, 11000001, 11000002, 11000003, 11000010, 11000011, 11000012, 11000013, 11000020, 11000021,
11000022, 11000030, 11000031, 11000100, 11000101, 11000102, 11000103, 11000110, 11000111, 11000112, 11000113,
11000120, 11000121, 11000122, 11000130, 11000200, 11000201, 11000202,
11000210, 11000211, 11000212, 11000220, 11000221, 11000300, 11000301, 11000310, 11000311, 11001000, 11001001,
11001002, 11001003, 11001010, 11001011, 11001012, 11001013, 11001020, 11001021, 11001022, 11001030, 11001031,
11001100, 11001101, 11001102, 11001103, 11001110, 11001111, 11001112, 11001113, 11001120, 11001121, 11001122,
11001130, 11001200, 11001201, 11001202, 11001210, 11001211, 11001212, 11001220, 11001300, 11001301, 11002000,
11002001, 11002002, 11002010, 11002011, 11002012, 11002020, 11002021, 11002022, 11002100, 11002101, 11002102,
11002110, 11002111, 11002120, 11002121, 11002200, 11002201, 11002202, 11002210, 11002211, 11003000, 11003010,
11003100, 11003110, 11010000, 11010001, 11010002, 11010003, 11010010, 11010011, 11010012, 11010013, 11010020,
11010021, 11010022, 11010030, 11010031, 11010100, 11010101, 11010102, 11010103, 11010110, 11010111, 11010112,
11010113, 11010120, 11010121, 11010122, 11010130, 11010200, 11010201, 11010202, 11010210, 11010211, 11010212,
11010220, 11010221, 11010300, 11010310, 11011000, 11011001, 11011002, 11011003, 11011010, 11011011, 11011012,
11011020, 11011021, 11011030, 11011100, 11011101, 11011102, 11011103, 11011110, 11011111, 11011112, 11011120,
11011121, 11011130, 11011200, 11011201, 11011202, 11011210, 11011211, 11011220, 11011300, 11012000, 11012001,
11012002, 11012010, 11012011, 11012020, 11012100, 11012101, 11012110, 11012111, 11012120, 11012200, 11013000,
11013010, 11020000, 11020001, 11020002, 11020010, 11020011, 11020012, 11020020, 11020021, 11020022, 11020100,
11020101, 11020102, 11020110, 11020111, 11020112, 11020200, 11021000, 11021001, 11021002, 11021010, 11021011,
11021020, 11021100, 11021101, 11021102, 11021110, 11021111, 11021200, 11022000, 11022100, 11030000, 11030001,
11031000, 11031001, 11100000, 11100001, 11100002, 11100003, 11100010, 11100011, 11100012, 11100013, 11100020,
11100021, 11100022, 11100030, 11100031, 11100100, 11100101, 11100102, 11100103, 11100110, 11100111, 11100112,
11100120, 11100121, 11100130, 11100200, 11100201, 11100202, 11100210, 11100211, 11100220, 11100300, 11100301,
11100310, 11101000, 11101001, 11101002, 11101003, 11101010, 11101011, 11101012, 11101013, 11101020, 11101021,
11101022, 11101030, 11101031, 11101100, 11101101, 11101102, 11101103, 11101110, 11101111, 11101112, 11101120,
11101121, 11101200, 11101201, 11101202, 11101210, 11101211, 11101300, 11101301, 11102000, 11102001, 11102002,
11102010, 11102011, 11102020, 11102100, 11102101, 11102102, 11102110, 11102111, 11102200, 11103000, 11103100,
11110000, 11110001, 11110002, 11110003, 11110010, 11110011, 11110012, 11110013, 11110020, 11110021, 11110022,
11110030, 11110031, 11110100, 11110101, 11110102, 11110103, 11110110, 11110111, 11110112, 11110120, 11110121,
11110130, 11110200, 11110201, 11110202, 11110210, 11110211, 11110220, 11110300, 11110310, 11111000, 11111001,
11111002, 11111003, 11111010, 11111011, 11111012, 11111020, 11111021, 11111030, 11111100, 11111101, 11111102,
11111110, 11111111, 11111120, 11111200, 11111201, 11111210, 11112000, 11112001, 11112002, 11112010, 11112011,
11112020, 11112100, 11112101, 11112110, 11113000, 11120000, 11120001, 11120002, 11120010, 11120011, 11120012,
11120020, 11120100, 11120101, 11120102, 11120110, 11120111, 11120200, 11121000, 11121001, 11121002, 11121010,
11121011, 11121100, 11121101, 11122000, 11130000, 11130001, 11200000, 11200001, 11200002, 11200010, 11200011,
11200012, 11200020, 11200100, 11200101, 11200102, 11200110, 11200111, 11200120, 11200200, 11201000, 11201001,
11201002, 11201010, 11201011, 11201012, 11201020, 11201100, 11201101, 11201110, 11201111, 11201200, 11202000,
11202001, 11202002, 11210000, 11210001, 11210002, 11210010, 11210011, 11210020, 11210100, 11210101, 11210102,
11210110, 11210111, 11210200, 11211000, 11211001, 11211002, 11211010, 11211011, 11211020, 11211100, 11211101,
11211110, 11220000, 11220001, 11220002, 11220010, 11220011, 11220020, 11300000, 11300001, 11300010, 11300011,
11300100, 11300101, 11300110, 12000000, 12000001, 12000002, 12000010, 12000011, 12000012, 12000020, 12000100,
12000101, 12000102, 12000110, 12000111, 12000112, 12000120, 12000200, 12000201, 12000202, 12001000, 12001001,
12001002, 12001010, 12001011, 12001012, 12001020, 12001100, 12001101, 12001102, 12001110, 12001111, 12001112,
12001120, 12001200, 12001201, 12001202, 12002000, 12002001, 12002010, 12002011, 12002020, 12010000, 12010001,
12010002, 12010010, 12010011, 12010012, 12010020, 12010100, 12010101, 12010110, 12010111, 12010120, 12010200,
12010201, 12011000, 12011001, 12011002, 12011010, 12011011, 12011100, 12011101, 12011110, 12011111, 12011200,
12011201, 12012000, 12012001, 12012010, 12020000, 12020001, 12020002, 12020010, 12020011, 12020012, 12020020,
12020100, 12020101, 12100000, 12100001, 12100002, 12100010, 12100011, 12100020, 12100100, 12100101, 12100102,
12100110, 12100111, 12100200, 12100201, 12100202, 12101000, 12101001, 12101002, 12101010, 12101011, 12101020,
12101100, 12101101, 12101102, 12101110, 12101111, 12102000, 12102001, 12102010, 12102020, 12110000, 12110001,
12110002, 12110010, 12110011, 12110020, 12110100, 12110101, 12110110, 12110111, 12110200, 12110201, 12111000,
12111001, 12111002, 12111010, 12111011, 12111100, 12111101, 12111110, 12120000, 12120001, 12120002, 12120010,
12120011, 12120020, 12120100, 12120101, 12200000, 12200001, 12200002, 12200010, 12200011, 12200020, 12200100,
12200101, 12200102, 12200110, 12200200, 12201000, 12201001, 12201002, 12201010, 12201011, 12201020, 12201100,
12201101, 12202000, 12202001, 13000000, 13000001, 13000010, 13000011, 13000100, 13000101, 13000110, 13000111,
13001000, 13001001, 13001010, 13001011, 13001100, 13001101, 13001110, 13001111, 13010000, 13010001, 13010010,
13010011, 13010100, 13010101, 13010110, 13010111, 13011000, 13011001, 13011010, 13011100, 13011101, 13011110,
20000000, 20000001, 20000002, 20000010, 20000011, 20000012, 20000020, 20000021, 20000022, 20000100, 20000101,
20000102, 20000110, 20000111, 20000112, 20000120, 20000121, 20000122, 20000200, 20000201, 20000202, 20000210,
20000211, 20000212, 20000220, 20000221, 20001000, 20001001, 20001002, 20001010, 20001011, 20001012, 20001020,
20001021, 20001022, 20001100, 20001101, 20001102, 20001110, 20001111, 20001112, 20001120, 20001121, 20001122,
20001200, 20001201, 20001202, 20001210, 20001211, 20001212, 20001220, 20002000, 20002001, 20002002, 20002010,
20002011, 20002012, 20002020, 20002021, 20002022, 20002100, 20002101, 20002102, 20002110, 20002111, 20002120,
20002121, 20002200, 20002201, 20002202, 20002210, 20002211, 20010000, 20010001, 20010002, 20010010, 20010011,
20010012, 20010020, 20010021, 20010022, 20010100, 20010101, 20010102, 20010110, 20010111, 20010112, 20010120,
20010121, 20010122, 20010200, 20010201, 20010202, 20010210, 20010211, 20010212, 20010220, 20010221, 20011000,
20011001, 20011010, 20011011, 20011020, 20011021, 20011100, 20011101, 20011110, 20011111, 20011120, 20011121,
20011200, 20011201, 20011210, 20011211, 20011220, 20012000, 20012001, 20012010, 20012011, 20012020, 20012100,
20012101, 20012110, 20012111, 20012120, 20012200, 20012201, 20020000, 20020001, 20020002, 20020010, 20020011,
20020012, 20020100, 20020101, 20020102, 20020110, 20020111, 20020112, 20020200, 20020201, 20020210, 20020211,
20021000, 20021001, 20021010, 20021011, 20021100, 20021101, 20021110, 20021111, 20021200, 20021201, 20021210,
20022000, 20022010, 20022100, 20022110, 20100000, 20100001, 20100002, 20100010, 20100011, 20100012, 20100020,
20100021, 20100022, 20100100, 20100101, 20100110, 20100111, 20100120, 20100121, 20100200, 20100201, 20100210,
20100211, 20100220, 20100221, 20101000, 20101001, 20101002, 20101010, 20101011, 20101012, 20101100, 20101101,
20101110, 20101111, 20101200, 20101201, 20101210, 20101211, 20102000, 20102001, 20102002, 20102010, 20102011,
20102012, 20102100, 20102101, 20102110, 20102111, 20102200, 20102210, 20110000, 20110001, 20110002, 20110010,
20110011, 20110012, 20110020, 20110021, 20110022, 20110100, 20110101, 20110110, 20110111, 20110120, 20110121,
20111000, 20111001, 20111010, 20111011, 20111100, 20111101, 20111110, 20111111, 20112000, 20112001, 20112010,
20112011, 20112100, 20112110, 20120000, 20120001, 20120002, 20120010, 20120011, 20120012, 20120100, 20120101,
20120110, 20120111, 20121000, 20121001, 20121100, 20122000, 20200000, 20200001, 20200002, 20200010, 20200011,
20200012, 20200020, 20200021, 20200022, 20200100, 20200101, 20200110, 20200111, 20200120, 20200121, 20200200,
20200210, 20200220, 20201000, 20201001, 20201002, 20201010, 20201011, 20201012, 20201100, 20201101, 20201110,
20201111, 20201200, 20201210, 20210000, 20210001, 20210002, 20210010, 20210011, 20210020, 20210021, 20210100,
20210101, 20210110, 20210111, 20211000, 20211001, 20211010, 20211011, 20211100, 20211110, 20220000, 20220001,
20220002, 20220010, 20220011, 20221000, 20221001, 21000000, 21000001, 21000002, 21000010, 21000011, 21000020,
21000021, 21000100, 21000101, 21000102, 21000110, 21000111, 21000200, 21000201, 21000202, 21000210, 21000211,
21001000, 21001001, 21001002, 21001010, 21001011, 21001020, 21001021, 21001100, 21001101, 21001102, 21001110,
21001111, 21002000, 21002001, 21002002, 21002010, 21002011, 21002020, 21002021, 21002100, 21002101, 21002102,
21002110, 21002111, 21010000, 21010001, 21010002, 21010010, 21010011, 21010020, 21010021, 21010100, 21010101,
21010102, 21010110, 21010111, 21010200, 21010201, 21010202, 21010210, 21010211, 21011000, 21011001, 21011010,
21011011, 21011020, 21011100, 21011101, 21011110, 21011111, 21020000, 21020001, 21020002, 21020010, 21020011,
21020100, 21020101, 21020102, 21020200, 21021000, 21021001, 21021010, 21021100, 21021101, 21100000, 21100001,
21100002, 21100010, 21100011, 21100020, 21100021, 21100100, 21100101, 21100110, 21100111, 21100200, 21100201,
21100210, 21101000, 21101001, 21101002, 21101010, 21101011, 21101100, 21101101, 21101110, 21101111, 21102000,
21102001, 21102002, 21102010, 21102011, 21102100, 21102101, 21110000, 21110001, 21110002, 21110010,
21110011, 21110020, 21110021, 21110100, 21110101, 21110110, 21110111, 21111000, 21111001, 21111010, 21111011,
21111100, 21111101, 21111110, 21200000, 21200001, 21200002, 21200010, 21200011, 21200020, 21200100, 21200101,
21200110, 21200200, 21201000, 21201001, 21201002, 21201010, 21201011, 21201100, 21201101, 21210000, 21210001,
21210002, 21210010, 21210011, 21210020, 21210100, 21210101, 21210110, 22000000, 22000001, 22000002, 22000010,
22000011, 22000020, 22000100, 22000101, 22000102, 22000110, 22000111, 22000200, 22000201, 22000202, 22001000,
22001001, 22001002, 22001010, 22001011, 22001020, 22001100, 22001101, 22001102, 22001110, 22001111, 22002000,
22002001, 22002010, 22002011, 22002020, 22010000, 22010001, 22010002, 22010010, 22010011, 22010020, 22010100,
22010101, 22010110, 22010111, 22010200, 22010201, 22011000, 22011001, 22011010, 22011100, 22011101, 22011110,
22020000, 22020001, 22020002, 22020010, 22020011, 22020100, 22020101, 22100000, 22100001, 22100002, 22100010,
22100011, 22100020, 22100100, 22100101, 22100110, 22100200, 22100201, 22101000, 22101001, 22101002, 22101010,
22101011, 22101100, 22101101, 22102000, 22102001, 22102010, 22110000, 22110001, 22110002, 22110010, 22110011,
22110020, 22110100, 22110101, 22110110, 22111000, 22111001, 22111010, 30000000, 30000001, 30000010, 30000011,
30000100, 30000101, 30000110, 30000111, 30001000, 30001001, 30001010, 30001011, 30001100, 30001101, 30001110,
30001111, 30010000, 30010001, 30010010, 30010011, 30010100, 30010101, 30010110, 30010111, 30011000, 30011001,
30011010, 30011011, 30011100, 30011101, 30011110, 30011111, 30100000, 30100001, 30100010, 30100011, 30100100,
30100101, 30100110, 30100111, 30101000, 30101001, 30101010, 30101011, 30101100, 30101101, 30101110, 30101111,
30110000, 30110001, 30110010, 30110011, 30110100, 30110101, 30110110, 30110111, 30111000, 30111001, 30111010,
30111011, 30111100, 30111110, 31000000, 31000001, 31000010, 31000011, 31000100, 31000101, 31000110, 31000111,
31001000, 31001001, 31001010, 31001011, 31001100, 31001101, 31001110, 31001111, 31010000, 31010001, 31010010,
31010011, 31010100, 31010101, 31010110, 31010111, 31011000, 31011001, 31011010, 31011100, 31011101, 31011110,
31100000, 31100001, 31100010, 31100011, 31100100, 31100101, 31100110, 31101000, 31101001, 31101010, 31101011,
31101100, 31101101, 31110000, 31110001, 31110010, 31110011, 31110100, 31110101, 31110110, 31111000, 31111001,
31111010, 100000000, 100000001, 100000002, 100000003, 100000010, 100000011, 100000012, 100000013, 100000020,
100000021, 100000022, 100000030, 100000031, 100000100, 100000101, 100000102, 100000103, 100000110, 100000111,
100000112, 100000113, 100000120, 100000121, 100000122, 100000130, 100000200, 100000201, 100000202, 100000210,
100000211, 100000212, 100000220, 100000221, 100000300, 100000301, 100000310, 100000311, 100001000, 100001001,
100001002, 100001003, 100001010, 100001011, 100001012, 100001013, 100001020, 100001021, 100001022, 100001030,
100001031, 100001100, 100001101, 100001102, 100001103, 100001110, 100001111, 100001112, 100001113, 100001120,
100001121, 100001122, 100001130, 100001200, 100001201, 100001202, 100001210, 100001211, 100001212, 100001220,
100001300, 100001301, 100002000, 100002001, 100002002, 100002010, 100002011, 100002012, 100002020, 100002021,
100002022, 100002100, 100002101, 100002102, 100002110, 100002111, 100002120, 100002121, 100002200, 100002201,
100002202, 100002210, 100002211, 100003000, 100003001, 100003010, 100003011, 100003100, 100003101, 100003110,
100003111, 100010000, 100010001, 100010002, 100010003, 100010010, 100010011, 100010012, 100010013, 100010020,
100010021, 100010022, 100010030, 100010031, 100010100, 100010101, 100010102, 100010103, 100010110, 100010111,
100010112, 100010113, 100010120, 100010121, 100010122, 100010130, 100010200, 100010201, 100010202, 100010210,
100010211, 100010212, 100010220, 100010221, 100010300, 100010310, 100011000, 100011001, 100011002, 100011003,
100011010, 100011011, 100011012, 100011013, 100011020, 100011021, 100011022, 100011030, 100011031, 100011100,
100011101, 100011102, 100011103, 100011110, 100011111, 100011112, 100011113, 100011120, 100011121, 100011122,
100011130, 100011200, 100011201, 100011202, 100011210, 100011211, 100011220, 100011300, 100012000, 100012001,
100012002, 100012010, 100012011, 100012012, 100012020, 100012100, 100012101, 100012102, 100012110, 100012111,
100012120, 100012200, 100012201, 100012202, 100013000, 100013001, 100013010, 100013011, 100020000, 100020001,
100020002, 100020010, 100020011, 100020012, 100020020, 100020021, 100020022, 100020100, 100020101, 100020102,
100020110, 100020111, 100020112, 100020120, 100020121, 100020122, 100020200, 100020201, 100020210, 100020211,
100020220, 100020221, 100021000, 100021001, 100021002, 100021010, 100021011, 100021020, 100021021, 100021100,
100021101, 100021102, 100021110, 100021111, 100021200, 100021201, 100021210, 100022000, 100022001, 100022002,
100022010, 100022011, 100022020, 100022100, 100022101, 100022102, 100022110, 100022111, 100030000, 100030010,
100030100, 100030110, 100031000, 100031010, 100031100, 100031110, 100100000, 100100001, 100100002, 100100003,
100100010, 100100011, 100100012, 100100013, 100100020, 100100021, 100100022, 100100030, 100100031, 100100100,
100100101, 100100102, 100100103, 100100110, 100100111, 100100112, 100100113, 100100120, 100100121, 100100122,
100100130, 100100200, 100100201, 100100202, 100100210, 100100211, 100100212, 100100220, 100100221, 100100300,
100100301, 100100310, 100100311, 100101000, 100101001, 100101002, 100101003, 100101010, 100101011, 100101012,
100101013, 100101020, 100101021, 100101022, 100101030, 100101031, 100101100, 100101101, 100101102, 100101103,
100101110, 100101111, 100101112, 100101113, 100101120, 100101121, 100101122, 100101130, 100101200, 100101201,
100101202, 100101210, 100101211, 100101212, 100101220, 100101300, 100101301, 100102000, 100102001, 100102002,
100102010, 100102011, 100102012, 100102020, 100102021, 100102022, 100102100, 100102101, 100102102, 100102110,
100102111, 100102120, 100102121, 100102200, 100102210, 100103000, 100103001, 100103100, 100103101, 100110000,
100110001, 100110002, 100110003, 100110010, 100110011, 100110012, 100110013, 100110020, 100110021, 100110022,
100110030, 100110031, 100110100, 100110101, 100110102, 100110103, 100110110, 100110111, 100110112, 100110113,
100110120, 100110121, 100110122, 100110130, 100110200, 100110201, 100110202, 100110210, 100110211, 100110212,
100110220, 100110221, 100110300, 100110310, 100111000, 100111001, 100111002, 100111003, 100111010, 100111011,
100111012, 100111013, 100111020, 100111021, 100111022, 100111030, 100111031, 100111100, 100111101, 100111102,
100111103, 100111110, 100111111, 100111112, 100111120, 100111121, 100111130, 100111200, 100111201, 100111202,
100111210, 100111211, 100111220, 100111300, 100112000, 100112001, 100112002, 100112010, 100112011, 100112012,
100112020, 100112100, 100112101, 100112102, 100112110, 100112111, 100112200, 100113000, 100113001, 100120000,
100120001, 100120002, 100120010, 100120011, 100120012, 100120020, 100120100, 100120101, 100120102, 100120110,
100120111, 100120112, 100120120, 100120200, 100120201, 100121000, 100121001, 100121010, 100121011, 100121020,
100121100, 100121101, 100121110, 100121111, 100121200, 100121201, 100122000, 100122010, 100122020, 100130000,
100130010, 100130100, 100130110, 100200000, 100200001, 100200002, 100200010, 100200011, 100200012, 100200020,
100200021, 100200022, 100200100, 100200101, 100200102, 100200110, 100200111, 100200112, 100200120, 100200121,
100200122, 100200200, 100200201, 100200202, 100200210, 100200211, 100200212, 100200220, 100200221, 100201000,
100201001, 100201002, 100201010, 100201011, 100201012, 100201020, 100201021, 100201022, 100201100, 100201101,
100201110, 100201111, 100201120, 100201121, 100201200, 100201201, 100201210, 100201211, 100201220, 100202000,
100202010, 100202100, 100202110, 100202200, 100202210, 100210000, 100210001, 100210002, 100210010, 100210011,
100210020, 100210021, 100210100, 100210101, 100210102, 100210110, 100210111, 100210200, 100210201, 100210202,
100210210, 100210211, 100211000, 100211001, 100211002, 100211010, 100211011, 100211020, 100211021, 100211100,
100211101, 100211110, 100211111, 100212000, 100212010, 100212100, 100220000, 100220001, 100220002, 100220100,
100220101, 100220102, 100220200, 100220201, 100221000, 100221100, 100300000, 100300001, 100300010, 100300011,
100301000, 100301001, 100301010, 100301011, 100310000, 100310001, 100310010, 100310011, 100311000, 100311001,
100311010, 100311011, 101000000, 101000001, 101000002, 101000003, 101000010, 101000011, 101000012, 101000013,
101000020, 101000021, 101000022, 101000030, 101000031, 101000100, 101000101, 101000102, 101000103, 101000110,
101000111, 101000112, 101000113, 101000120, 101000121, 101000122, 101000130, 101000200, 101000201, 101000202,
101000210, 101000211, 101000212, 101000220, 101000221, 101000300, 101000301, 101000310, 101000311, 101001000,
101001001, 101001002, 101001003, 101001010, 101001011, 101001012, 101001013, 101001020, 101001021, 101001022,
101001030, 101001031, 101001100, 101001101, 101001102, 101001103, 101001110, 101001111, 101001112, 101001113,
101001120, 101001121, 101001122, 101001130, 101001200, 101001201, 101001202, 101001210, 101001211, 101001212,
101001220, 101001300, 101001301, 101002000, 101002001, 101002002, 101002010, 101002011, 101002012, 101002020,
101002021, 101002022, 101002100, 101002101, 101002102, 101002110, 101002111, 101002120, 101002121, 101002200,
101002201, 101002202, 101002210, 101002211, 101003000, 101003010, 101003100, 101003110, 101010000, 101010001,
101010002, 101010003, 101010010, 101010011, 101010012, 101010013, 101010020, 101010021, 101010022, 101010030,
101010031, 101010100, 101010101, 101010102, 101010103, 101010110, 101010111, 101010112, 101010113, 101010120,
101010121, 101010122, 101010130, 101010200, 101010201, 101010202, 101010210, 101010211, 101010212, 101010220,
101010221, 101010300, 101010310, 101011000, 101011001, 101011002, 101011003, 101011010, 101011011, 101011012,
101011013, 101011020, 101011021, 101011022, 101011030, 101011031, 101011100, 101011101, 101011102, 101011103,
101011110, 101011111, 101011112, 101011113, 101011120, 101011121, 101011122, 101011130, 101011200, 101011201,
101011202, 101011210, 101011211, 101011220, 101011300, 101012000, 101012001, 101012002, 101012010, 101012011,
101012012, 101012020, 101012100, 101012101, 101012110, 101012111, 101012120, 101012200, 101013000, 101013010,
101020000, 101020001, 101020002, 101020010, 101020011, 101020012, 101020020, 101020021, 101020022, 101020100,
101020101, 101020110, 101020111, 101020120, 101020121, 101020200, 101020210, 101020220,
101021000, 101021001, 101021002, 101021010, 101021011, 101021020, 101021021, 101021100, 101021101, 101021110,
101021111, 101021200, 101021210, 101022000, 101022001, 101022002, 101022100, 101030000, 101030010, 101031000,
101031010, 101100000, 101100001, 101100002, 101100003, 101100010, 101100011, 101100012, 101100013, 101100020,
101100021, 101100022, 101100030, 101100031, 101100100, 101100101, 101100102, 101100103, 101100110, 101100111,
101100112, 101100113, 101100120, 101100121, 101100122, 101100130, 101100200, 101100201, 101100202, 101100210,
101100211, 101100212, 101100220, 101100221, 101100300, 101100301, 101100310, 101100311, 101101000, 101101001,
101101002, 101101003, 101101010, 101101011, 101101012, 101101013, 101101020, 101101021, 101101022, 101101030,
101101031, 101101100, 101101101, 101101102, 101101110, 101101111, 101101112, 101101120, 101101121, 101101122,
101101130, 101101200, 101101201, 101101210, 101101211, 101101220, 101101300, 101102000, 101102001, 101102002,
101102010, 101102011, 101102020, 101102100, 101102101, 101102110, 101102111, 101102120, 101102200, 101102210,
101103000, 101103100, 101110000, 101110001, 101110002, 101110003, 101110010, 101110011, 101110012, 101110013,
101110020, 101110021, 101110022, 101110030, 101110031, 101110100, 101110101, 101110102, 101110103, 101110110,
101110111, 101110112, 101110120, 101110121, 101110130, 101110200, 101110201, 101110202, 101110210, 101110211,
101110220, 101110300, 101110310, 101111000, 101111001, 101111002, 101111003, 101111010, 101111011, 101111012,
101111013, 101111020, 101111021, 101111022, 101111100, 101111101, 101111102, 101111110, 101111111, 101111112,
101111120, 101111121, 101111200, 101111201, 101111210, 101111211, 101111300, 101112000, 101112001, 101112002,
101112010, 101112011, 101112100, 101112101, 101112110, 101112200, 101113000, 101120000, 101120001, 101120002,
101120010, 101120011, 101120012, 101120020, 101120100, 101120101, 101120110, 101120111, 101120120, 101120200,
101121000, 101121001, 101121010, 101121011, 101121100, 101121110, 101122000, 101130000, 101130010, 101200000,
101200001, 101200002, 101200010, 101200011, 101200012, 101200020, 101200100, 101200101, 101200102, 101200110,
101200111, 101200112, 101200120, 101200200, 101200201, 101200202, 101201000, 101201001, 101201002, 101201010,
101201011, 101201012, 101201020, 101201100, 101201101, 101201110, 101201111, 101201120, 101201200, 101202000,
101202010, 101210000, 101210001, 101210002, 101210010, 101210011, 101210020, 101210100, 101210101, 101210102,
101210110, 101210111, 101211000, 101211001, 101211002, 101211010, 101211011, 101211100, 101211101, 101211110,
101211111, 101212000, 101220000, 101220001, 101220002, 101300000, 101300001, 101300010, 101300011, 101301000,
101301001, 101301010, 101301011, 102000000, 102000001, 102000002, 102000010, 102000011, 102000012, 102000020,
102000021, 102000022, 102000100, 102000101, 102000102, 102000110, 102000111, 102000112, 102000120, 102000121,
102000122, 102000200, 102000210, 102000220, 102001000, 102001001, 102001002, 102001010, 102001011, 102001012,
102001020, 102001021, 102001022, 102001100, 102001101, 102001102, 102001110, 102001111, 102001112, 102001120,
102001121, 102001122, 102001200, 102001210, 102001220, 102002000, 102002001, 102002100, 102002101, 102002200,
102010000, 102010001, 102010002, 102010010, 102010011, 102010012, 102010020, 102010021, 102010022, 102010100,
102010101, 102010110, 102010111, 102010120, 102010121, 102010200, 102010210, 102010220, 102011000, 102011001,
102011002, 102011010, 102011011, 102011012, 102011100, 102011101, 102011110, 102011111, 102011200, 102011210,
102012000, 102012001, 102012100, 102012200, 102020000, 102020001, 102020002, 102020010, 102020011, 102020012,
102020020, 102020021, 102020022, 102021000, 102021001, 102021002, 102021010, 102021011, 102022000, 102022001,
102100000, 102100001, 102100002, 102100010, 102100011, 102100020, 102100021, 102100100, 102100101, 102100102,
102100110, 102100111, 102100200, 102100210, 102101000, 102101001, 102101002, 102101010, 102101011, 102101020,
102101021, 102101100, 102101101, 102101110, 102101111, 102102000, 102102001, 102102100, 102110000, 102110001,
102110002, 102110010, 102110011, 102110020, 102110021, 102110100, 102110101, 102110110, 102110111, 102110200,
102110210, 102111000, 102111001, 102111002, 102111010, 102111011, 102111100, 102111101, 102111110, 102111111,
102120000, 102120001, 102120002, 102120010, 102120011, 102120020, 102121000, 102121001, 102200000, 102200001,
102200002, 102200010, 102200011, 102200020, 102200100, 102200101, 102200102, 102200110, 102200111, 102200200,
102210000, 102210001, 102210002, 102210010, 102210011, 102210020, 103000000, 103000001, 103000010, 103000011,
103000100, 103000101, 103000110, 103000111, 103001000, 103001001, 103001010, 103001011, 103001100, 103001101,
103001110, 103001111, 103100000, 103100001, 103100010, 103100011, 103100100, 103100101, 103100110, 103100111,
103101000, 103101001, 103101010, 103101011, 103101100, 103101110, 110000000, 110000001, 110000002, 110000003,
110000010, 110000011, 110000012, 110000013, 110000020, 110000021, 110000022, 110000030, 110000031, 110000100,
110000101, 110000102, 110000103, 110000110, 110000111, 110000112, 110000113, 110000120, 110000121, 110000122,
110000130, 110000200, 110000201, 110000202, 110000210, 110000211, 110000212, 110000220, 110000221, 110000300,
110000301, 110000310, 110000311, 110001000, 110001001, 110001002, 110001003, 110001010, 110001011, 110001012,
110001013, 110001020, 110001021, 110001022, 110001030, 110001031, 110001100, 110001101, 110001102, 110001103,
110001110, 110001111, 110001112, 110001113, 110001120, 110001121, 110001122, 110001130, 110001200, 110001201,
110001202, 110001210, 110001211, 110001212, 110001220, 110001300, 110001301, 110002000, 110002001, 110002002,
110002010, 110002011, 110002012, 110002020, 110002021, 110002022, 110002100, 110002101, 110002102, 110002110,
110002111, 110002120, 110002121, 110002200, 110002201, 110002202, 110002210, 110002211, 110003000, 110003001,
110003010, 110003011, 110003100, 110003101, 110003110, 110003111, 110010000, 110010001, 110010002, 110010003,
110010010, 110010011, 110010012, 110010013, 110010020, 110010021, 110010022, 110010030, 110010031, 110010100,
110010101, 110010102, 110010103, 110010110, 110010111, 110010112, 110010113, 110010120, 110010121, 110010122,
110010130, 110010200, 110010201, 110010202, 110010210, 110010211, 110010212, 110010220, 110010221, 110010300,
110010310, 110011000, 110011001, 110011002, 110011003, 110011010, 110011011, 110011012, 110011013, 110011020,
110011021, 110011022, 110011030, 110011031, 110011100, 110011101, 110011102, 110011103, 110011110, 110011111,
110011112, 110011113, 110011120, 110011121, 110011122, 110011130, 110011200, 110011201, 110011202, 110011210,
110011211, 110011220, 110011300, 110012000, 110012001, 110012002, 110012010, 110012011, 110012012, 110012020,
110012100, 110012101, 110012102, 110012110, 110012111, 110012120, 110012200, 110012201, 110012202, 110013000,
110013001, 110013010, 110013011, 110020000, 110020001, 110020002, 110020010, 110020011, 110020020, 110020100,
110020101, 110020102, 110020110, 110020111, 110020120, 110020200, 110020201, 110020210, 110020211, 110020220,
110021000, 110021001, 110021002, 110021010, 110021011, 110021020, 110021100, 110021101, 110021102, 110021110,
110021111, 110021200, 110021201, 110021210, 110022000, 110022010, 110022020, 110022100, 110022110, 110030000,
110030100, 110031000, 110031100, 110100000, 110100001, 110100002, 110100003, 110100010, 110100011, 110100012,
110100013, 110100020, 110100021, 110100022, 110100030, 110100031, 110100100, 110100101, 110100102, 110100103,
110100110, 110100111, 110100112, 110100113, 110100120, 110100121, 110100122, 110100130, 110100200, 110100201,
110100202, 110100210, 110100211, 110100212, 110100220, 110100221, 110100300, 110100301, 110100310, 110100311,
110101000, 110101001, 110101002, 110101003, 110101010, 110101011, 110101012, 110101020, 110101021, 110101030,
110101100, 110101101, 110101102, 110101103, 110101110, 110101111, 110101112, 110101120, 110101121, 110101130,
110101200, 110101201, 110101202, 110101210, 110101211, 110101212, 110101220, 110101300, 110101301, 110102000,
110102001, 110102002, 110102010, 110102011, 110102020, 110102100, 110102101, 110102102, 110102110, 110102111,
110102120, 110102200, 110102210, 110103000, 110103001, 110103100, 110103101, 110110000, 110110001, 110110002,
110110003, 110110010, 110110011, 110110012, 110110013, 110110020, 110110021, 110110022, 110110030, 110110031,
110110100, 110110101, 110110102, 110110103, 110110110, 110110111, 110110112, 110110113, 110110120, 110110121,
110110122, 110110200, 110110201, 110110202, 110110210, 110110211, 110110212, 110110300, 110111000, 110111001,
110111002, 110111003, 110111010, 110111011, 110111012, 110111020, 110111021, 110111030, 110111100, 110111101,
110111102, 110111110, 110111111, 110111112, 110111120, 110111121, 110111200, 110111201, 110111210, 110111211,
110111300, 110112000, 110112001, 110112002, 110112010, 110112011, 110112020, 110112100, 110112101, 110112110,
110112111, 110112200, 110113000, 110113001, 110120000, 110120001, 110120002, 110120010, 110120011, 110120020,
110120100, 110120101, 110120102, 110120110, 110120111, 110120200, 110120201, 110121000, 110121001, 110121010,
110121100, 110121101, 110121110, 110121200, 110122000, 110130000, 110130100, 110200000, 110200001, 110200002,
110200010, 110200011, 110200012, 110200020, 110200021, 110200022, 110200100, 110200101, 110200102, 110200110,
110200111, 110200112, 110200120, 110200121, 110200122, 110200200, 110200210, 110200220, 110201000, 110201001,
110201002, 110201010, 110201011, 110201020, 110201100, 110201101, 110201110, 110201111, 110201120, 110202000,
110210000, 110210001, 110210002, 110210010, 110210011, 110210020, 110210021, 110210100, 110210101, 110210102,
110210110, 110210111, 110210200, 110211000, 110211001, 110211002, 110211010, 110211011, 110211020, 110211100,
110211101, 110211110, 110211111, 110212000, 110220000, 110220001, 110220002, 110221000, 110300000, 110300001,
110300010, 110300011, 110310000, 110310001, 110310010, 110310011, 111000000, 111000001, 111000002, 111000003,
111000010, 111000011, 111000012, 111000013, 111000020, 111000021, 111000022, 111000030, 111000031, 111000100,
111000101, 111000102, 111000103, 111000110, 111000111, 111000112, 111000120, 111000121, 111000130, 111000200,
111000201, 111000202, 111000210, 111000211, 111000220, 111000300, 111000301, 111000310, 111001000, 111001001,
111001002, 111001003, 111001010, 111001011, 111001012, 111001013, 111001020, 111001021, 111001022, 111001030,
111001031, 111001100, 111001101, 111001102, 111001103, 111001110, 111001111, 111001112, 111001120, 111001121,
111001200, 111001201, 111001202, 111001210, 111001211, 111001300, 111001301, 111002000, 111002001, 111002002,
111002010, 111002011, 111002012, 111002020, 111002021, 111002022, 111002100, 111002101, 111002102, 111002110,
111002111, 111002200, 111002201, 111002202, 111003000, 111003010, 111003100, 111010000, 111010001, 111010002,
111010003, 111010010, 111010011, 111010012, 111010013, 111010020, 111010021, 111010022, 111010030, 111010031,
111010100, 111010101, 111010102, 111010103, 111010110, 111010111, 111010112, 111010120, 111010121, 111010130,
111010200, 111010201, 111010202, 111010210, 111010211, 111010220, 111010300, 111010310, 111011000, 111011001,
111011002, 111011003, 111011010, 111011011, 111011012, 111011020, 111011021, 111011030, 111011100, 111011101,
111011102, 111011103, 111011110, 111011111, 111011112, 111011120, 111011121, 111011200, 111011201, 111011202,
111011210, 111011211, 111012000, 111012001, 111012002, 111012010, 111012011, 111012020, 111012100, 111012101,
111012110, 111012111, 111013000, 111013010, 111020000, 111020001, 111020002, 111020010, 111020011, 111020020,
111020100, 111020101, 111020110, 111020200, 111021000, 111021001, 111021002, 111021010, 111021011, 111021020,
111021100, 111021101, 111021110, 111022000, 111030000, 111031000, 111100000, 111100001, 111100002, 111100003,
111100010, 111100011, 111100012, 111100013, 111100020, 111100021, 111100022, 111100030, 111100031, 111100100,
111100101, 111100102, 111100103, 111100110, 111100111, 111100112, 111100120, 111100121, 111100130, 111100200,
111100201, 111100202, 111100210, 111100211, 111100220, 111100300, 111100301, 111100310, 111101000, 111101001,
111101002, 111101003, 111101010, 111101011, 111101012, 111101020, 111101021, 111101030, 111101100, 111101101,
111101102, 111101110, 111101111, 111101120, 111101200, 111101201, 111101210, 111101300, 111102000, 111102001,
111102002, 111102010, 111102011, 111102020, 111102100, 111102101, 111102110, 111102200, 111103000, 111103100,
111110000, 111110001, 111110002, 111110003, 111110010, 111110011, 111110012, 111110013, 111110020, 111110021,
111110022, 111110030, 111110031, 111110100, 111110101, 111110102, 111110103, 111110110, 111110111, 111110112,
111110120, 111110121, 111110200, 111110201, 111110202, 111110210, 111110211, 111110300, 111111000, 111111001,
111111002, 111111003, 111111010, 111111011, 111111012, 111111020, 111111021, 111111100, 111111101, 111111102,
111111110, 111111111, 111111200, 111111201, 111112000, 111112001, 111112002, 111112010, 111112011, 111112100,
111112101, 111120000, 111120001, 111120002, 111120010, 111120011, 111120020, 111120100, 111120101, 111120110,
111120200, 111121000, 111121001, 111121010, 111121100, 111130000, 111200000, 111200001, 111200002, 111200010,
111200011, 111200012, 111200020, 111200100, 111200101, 111200102, 111200110, 111200111, 111200120, 111200200,
111201000, 111201001, 111201002, 111201010, 111201011, 111201020, 111201100, 111201101, 111201110, 111202000,
111210000, 111210001, 111210002, 111210010, 111210011, 111210020, 111210100, 111210101, 111210102, 111210110,
111210111, 111211000, 111211001, 111211002, 111211010, 111211011, 111220000, 111220001, 111220002, 111300000,
111300001, 111300010, 111300011, 112000000, 112000001, 112000002, 112000010, 112000011, 112000012, 112000020,
112000100, 112000101, 112000102, 112000110, 112000111, 112000120, 112000200, 112001000, 112001001, 112001002,
112001010, 112001011, 112001012, 112001020, 112001100, 112001101, 112001102, 112001110, 112001111, 112001200,
112002000, 112002001, 112010000, 112010001, 112010002, 112010010, 112010011, 112010012, 112010020, 112010100,
112010101, 112010110, 112010111, 112010120, 112010200, 112011000, 112011001, 112011002, 112011010, 112011011,
112011100, 112011101, 112011110, 112011111, 112012000, 112012001, 112020000, 112020001, 112020002, 112020010,
112020011, 112020020, 112100000, 112100001, 112100002, 112100010, 112100011, 112100020, 112100100, 112100101,
112100102, 112100110, 112100111, 112100200, 112101000, 112101001, 112101002, 112101010, 112101011, 112101020,
112101100, 112101101, 112101110, 112102000, 112102001, 112110000, 112110001, 112110002, 112110010, 112110011,
112110020, 112110100, 112110101, 112110110, 112110111, 112110200, 112111000, 112111001, 112111002, 112111010,
112111011, 112111100, 112111101, 112200000, 112200001, 112200002, 112200010, 112200011, 112200020, 112200100,
112200101, 112200102, 112200110, 112200200, 113000000, 113000001, 113000010, 113000011, 113000100, 113000101,
113000110, 113001000, 113001001, 113001010, 113001011, 113001100, 113001101, 120000000, 120000001, 120000002,
120000010, 120000011, 120000012, 120000020, 120000100, 120000101, 120000102, 120000110, 120000111, 120000112,
120000120, 120000200, 120000201, 120000202, 120001000, 120001001, 120001002, 120001010, 120001011, 120001012,
120001020, 120001100, 120001101, 120001102, 120001110, 120001111, 120001112, 120001120, 120001200, 120001201,
120001202, 120002000, 120002001, 120002002, 120002010, 120002011, 120002012, 120002020, 120010000, 120010001,
120010002, 120010010, 120010011, 120010012, 120010020, 120010100, 120010101, 120010102, 120010110, 120010111,
120010112, 120010120, 120010200, 120010201, 120010202, 120011000, 120011001, 120011010, 120011011, 120011020,
120011100, 120011101, 120011110, 120011111, 120011120, 120011200, 120011201, 120012000, 120012001, 120012010,
120012011, 120012020, 120020000, 120020001, 120020002, 120020010, 120020100, 120020101, 120020102, 120020110,
120020200, 120020201, 120100000, 120100001, 120100002, 120100010, 120100011, 120100012, 120100020, 120100100,
120100101, 120100110, 120100111, 120100120, 120100200, 120100201, 120101000, 120101001, 120101002, 120101010,
120101011, 120101100, 120101101, 120101110, 120101111, 120101200, 120101201, 120102000, 120102001, 120102002,
120102010, 120110000, 120110001, 120110002, 120110010, 120110011, 120110012, 120110020, 120110100, 120110101,
120110110, 120110111, 120111000, 120111001, 120111010, 120111011, 120111100, 120111101, 120111110, 120111111,
120112000, 120112001, 120112010, 120120000, 120120001, 120120002, 120120010, 120120100, 120120101, 120200000,
120200001, 120200002, 120200010, 120200011, 120200012, 120200020, 120200100, 120200101, 120200110, 120200111,
120200120, 120200200, 120201000, 120201001, 120201002, 120201010, 121000000, 121000001, 121000002, 121000010,
121000011, 121000020, 121000100, 121000101, 121000102, 121000110, 121000111, 121000200, 121000201, 121000202,
121001000, 121001001, 121001002, 121001010, 121001011, 121001020, 121001100, 121001101, 121001102, 121001110,
121001111, 121002000, 121002001, 121002002, 121002010, 121002011, 121002020, 121010000, 121010001, 121010002,
121010010, 121010011, 121010020, 121010100, 121010101, 121010102, 121010110, 121010111, 121010200, 121010201,
121010202, 121011000, 121011001, 121011010, 121011011, 121011020, 121011100, 121011101, 121011110, 121011111,
121020000, 121020001, 121020002, 121020010, 121020100, 121020101, 121020200, 121100000, 121100001, 121100002,
121100010, 121100011, 121100020, 121100100, 121100101, 121100110, 121100111, 121100200, 121100201, 121101000,
121101001, 121101002, 121101010, 121101011, 121101100, 121101101, 121101110, 121102000, 121102001, 121102002,
121102010, 121110000, 121110001, 121110002, 121110010, 121110011, 121110020, 121110100, 121110101, 121110110,
121110111, 121111000, 121111001, 121111010, 121111011, 121111100, 121111101, 121200000, 121200001, 121200002,
121200010, 121200011, 121200020, 121200100, 121200101, 121200110, 121200200, 121201000, 121201001, 121201002,
121201010, 122000000, 122000001, 122000002, 122000010, 122000011, 122000020, 122000100, 122000101, 122000102,
122000110, 122000200, 122001000, 122001001, 122001002, 122001010, 122001011, 122001020, 122001100, 122001101,
122001102, 122002000, 122002001, 122010000, 122010001, 122010002, 122010010, 122010011, 122010020, 122010100,
122010101, 122010110, 122010200, 122011000, 122011001, 122011010, 122020000, 122020001, 122020002, 122020010,
130000000, 130000001, 130000010, 130000011, 130000100, 130000101, 130000110, 130000111, 130001000, 130001001,
130001010, 130001011, 130001100, 130001101, 130001110, 130001111, 130010000, 130010001, 130010010, 130010011,
130010100, 130010101, 130010110, 130010111, 130011000, 130011001, 130011010, 130011011, 130011100, 130011101,
130011110, 130011111, 130100000, 130100001, 130100010, 130100011, 130100100, 130100101, 130100110, 130100111,
130101000, 130101001, 130101010, 130101100, 130101101, 130101110, 130110000, 130110001, 130110010, 130110011,
130110100, 130110101, 130111000, 130111001, 130111010, 130111100, 200000000, 200000001, 200000002, 200000010,
200000011, 200000012, 200000020, 200000021, 200000022, 200000100, 200000101, 200000102, 200000110, 200000111,
200000112, 200000120, 200000121, 200000122, 200000200, 200000201, 200000202, 200000210, 200000211, 200000212,
200000220, 200000221, 200001000, 200001001, 200001002, 200001010, 200001011, 200001012, 200001020, 200001021,
200001022, 200001100, 200001101, 200001102, 200001110, 200001111, 200001112, 200001120, 200001121, 200001122,
200001200, 200001201, 200001202, 200001210, 200001211, 200001212, 200001220, 200002000, 200002001, 200002002,
200002010, 200002011, 200002012, 200002020, 200002021, 200002022, 200002100, 200002101, 200002102, 200002110,
200002111, 200002120, 200002121, 200002200, 200002201, 200002202, 200002210, 200002211, 200010000, 200010001,
200010002, 200010010, 200010011, 200010012, 200010020, 200010021, 200010022, 200010100, 200010101, 200010102,
200010110, 200010111, 200010112, 200010120, 200010121, 200010122, 200010200, 200010201, 200010202, 200010210,
200010211, 200010212, 200010220, 200010221, 200011000, 200011001, 200011002, 200011010, 200011011, 200011012,
200011020, 200011021, 200011022, 200011100, 200011101, 200011102, 200011110, 200011111, 200011112, 200011120,
200011121, 200011122, 200011200, 200011201, 200011202, 200011210, 200011211, 200011220, 200012000, 200012001,
200012002, 200012010, 200012011, 200012012, 200012020, 200012100, 200012101, 200012102, 200012110, 200012111,
200012120, 200012200, 200012201, 200012202, 200020000, 200020001, 200020010, 200020011, 200020020, 200020021,
200020100, 200020101, 200020110, 200020111, 200020120, 200020121, 200020200, 200020201, 200020210, 200020211,
200020220, 200020221, 200021000, 200021001, 200021010, 200021011, 200021020, 200021021, 200021100, 200021101,
200021110, 200021111, 200021200, 200021201, 200021210, 200022000, 200022001, 200022010, 200022011, 200022020,
200022100, 200022101, 200022110, 200022111, 200100000, 200100001, 200100002, 200100010, 200100011, 200100012,
200100020, 200100021, 200100022, 200100100, 200100101, 200100102, 200100110, 200100111, 200100112, 200100120,
200100121, 200100122, 200100200, 200100201, 200100202, 200100210, 200100211, 200100212, 200100220, 200100221,
200101000, 200101001, 200101010, 200101011, 200101020, 200101021, 200101100, 200101101, 200101110, 200101111,
200101120, 200101121, 200101200, 200101201, 200101210, 200101211, 200101220, 200102000, 200102001, 200102010,
200102011, 200102020, 200102021, 200102100, 200102101, 200102110, 200102111, 200102120, 200102121, 200102200,
200102210, 200110000, 200110001, 200110002, 200110010, 200110011, 200110012, 200110100, 200110101, 200110102,
200110110, 200110111, 200110112, 200110200, 200110201, 200110202, 200110210, 200110211, 200110212, 200111000,
200111001, 200111010, 200111011, 200111100, 200111101, 200111110, 200111111, 200111200, 200111201, 200111210,
200111211, 200112000, 200112001, 200112010, 200112011, 200112100, 200112101, 200112110, 200112111, 200112200,
200120000, 200120001, 200120010, 200120011, 200120100, 200120101, 200120110, 200120111, 200120200, 200120201,
200121000, 200121010, 200121100, 200121110, 200121200, 200122000, 200122010, 200200000, 200200001, 200200002,
200200010, 200200011, 200200012, 200200020, 200200021, 200200022, 200200100, 200200101, 200200102, 200200110,
200200111, 200200112, 200200120, 200200121, 200200122, 200201000, 200201001, 200201010, 200201011, 200201020,
200201021, 200201100, 200201101, 200201110, 200201111, 200201120, 200201121, 200202000, 200202010, 200202100,
200202110, 200210000, 200210001, 200210002, 200210010, 200210011, 200210100, 200210101, 200210102, 200210110,
200210111, 200211000, 200211001, 200211010, 200211011, 200211100, 200211101, 200211110, 200211111, 200212000,
200212010, 200212100, 200220000, 200220001, 200220100, 200220101, 200221000, 200221100, 201000000, 201000001,
201000002, 201000010, 201000011, 201000012, 201000020, 201000021, 201000022, 201000100, 201000101, 201000110,
201000111, 201000120, 201000121, 201000200, 201000201, 201000210, 201000211, 201000220, 201000221, 201001000,
201001001, 201001002, 201001010, 201001011, 201001012, 201001100, 201001101, 201001110, 201001111, 201001200,
201001201, 201001210, 201001211, 201002000, 201002001, 201002002, 201002010, 201002011, 201002012, 201002100,
201002101, 201002110, 201002111, 201002200, 201002201, 201002210, 201002211, 201010000, 201010001, 201010002,
201010010, 201010011, 201010012, 201010020, 201010021, 201010022, 201010100, 201010101, 201010110, 201010111,
201010120, 201010121, 201011000, 201011001, 201011002, 201011010, 201011011, 201011012, 201011100, 201011101,
201011110, 201011111, 201012000, 201012001, 201012002, 201012010, 201012011, 201012012, 201012100, 201012101,
201012110, 201012111, 201020000, 201020001, 201020010, 201020011, 201020020, 201020021, 201020100, 201020110,
201020120, 201021000, 201021001, 201021010, 201021011, 201021100, 201021110, 201022000, 201022001, 201022100,
201100000, 201100001, 201100002, 201100010, 201100011, 201100012, 201100020, 201100021, 201100022, 201100100,
201100101, 201100110, 201100111, 201100120, 201100121, 201100200, 201100201, 201100210, 201100211, 201100220,
201100221, 201101000, 201101001, 201101010, 201101011, 201101100, 201101101, 201101110, 201101111, 201101200,
201101210, 201110000, 201110001, 201110002, 201110010, 201110011, 201110012, 201110100, 201110101, 201110110,
201110111, 201111000, 201111001, 201111010, 201111011, 201111100, 201111101, 201111110, 201111111, 201120000,
201120001, 201120010, 201120011, 201120100, 201120110, 201121000, 201121100, 201200000, 201200001, 201200002,
201200010, 201200011, 201200012, 201200020, 201200100, 201200101, 201200110, 201200111, 201200120, 201201000,
201201001, 201201010, 201201011, 201201100, 201201110, 201210000, 201210001, 201210002, 201210010, 201210011,
201211000, 201211001, 201220000, 201220001, 202000000, 202000001, 202000002, 202000010, 202000011, 202000012,
202000020, 202000021, 202000022, 202000100, 202000101, 202000110, 202000111, 202000120, 202000121, 202000200,
202000210, 202000220, 202001000, 202001001, 202001002, 202001010, 202001011, 202001012, 202001100, 202001101,
202001110, 202001111, 202001200, 202001210, 202002000, 202002001, 202002100, 202002101, 202002200, 202010000,
202010001, 202010002, 202010010, 202010011, 202010012, 202010020, 202010021, 202010022, 202010100, 202010101,
202010110, 202010111, 202010120, 202010121, 202011000, 202011001, 202011002, 202011010, 202011011, 202011012,
202011100, 202011101, 202011110, 202011111, 202012000, 202012001, 202012100, 202100000, 202100001, 202100002,
202100010, 202100011, 202100020, 202100021, 202100100, 202100101, 202100110, 202100111, 202100200, 202100210,
202101000, 202101001, 202101010, 202101011, 202101100, 202101110, 202110000, 202110001, 202110002, 202110010,
202110011, 202110100, 202110101, 202110110, 202110111, 202111000, 202111001, 202111100, 202200000, 202200001,
202200002, 202200010, 202200011, 202200020, 202200100, 202200101, 202200110, 202200111, 202210000, 202210001,
202210002, 202210010, 202210011, 210000000, 210000001, 210000002, 210000010, 210000011, 210000020, 210000021,
210000100, 210000101, 210000102, 210000110, 210000111, 210000200, 210000201, 210000202, 210000210, 210000211,
210001000, 210001001, 210001002, 210001010, 210001011, 210001020, 210001021, 210001100, 210001101, 210001102,
210001110, 210001111, 210002000, 210002001, 210002002, 210002010, 210002011, 210002020, 210002021, 210002100,
210002101, 210002102, 210002110, 210002111, 210010000, 210010001, 210010002, 210010010, 210010011, 210010020,
210010021, 210010100, 210010101, 210010102, 210010110, 210010111, 210010200, 210010201, 210010202, 210010210,
210010211, 210011000, 210011001, 210011002, 210011010, 210011011, 210011020, 210011021, 210011100, 210011101,
210011102, 210011110, 210011111, 210020000, 210020001, 210020010, 210020020, 210020100, 210020101, 210020110,
210020200, 210020201, 210020210, 210021000, 210021001, 210021010, 210021020, 210021100, 210021101, 210021110,
210100000, 210100001, 210100002, 210100010, 210100011, 210100020, 210100021, 210100100, 210100101, 210100102,
210100110, 210100111, 210100200, 210100201, 210100202, 210100210, 210100211, 210101000, 210101001, 210101010,
210101011, 210101020, 210101100, 210101101, 210101110, 210101111, 210102000, 210102001, 210102010, 210102020,
210102100, 210102101, 210102110, 210110000, 210110001, 210110002, 210110010, 210110011, 210110100, 210110101,
210110102, 210110110, 210110111, 210110200, 210110201, 210110202, 210111000, 210111001, 210111010, 210111011,
210111100, 210111101, 210111110, 210111111, 210200000, 210200001, 210200002, 210200010, 210200011, 210200020,
210200021, 210200100, 210200101, 210200102, 210200110, 210200111, 210201000, 210201001, 210201010, 210201020,
210202000, 210210000, 210210001, 210210002, 210210010, 210210011, 210210100, 210210101, 210210102, 210211000,
210211001, 210211010, 211000000, 211000001, 211000002, 211000010, 211000011, 211000020, 211000021, 211000100,
211000101, 211000110, 211000111, 211000200, 211000201, 211000210, 211001000, 211001001, 211001002, 211001010,
211001011, 211001100, 211001101, 211001110, 211001111, 211002000, 211002001, 211002002, 211002010, 211002011,
211002100, 211002101, 211010000, 211010001, 211010002, 211010010, 211010011, 211010020, 211010021, 211010100,
211010101, 211010110, 211010111, 211011000, 211011001, 211011002, 211011010, 211011011, 211011100, 211011101,
211011110, 211011111, 211020000, 211020001, 211020010, 211020020, 211020100, 211020110, 211021000, 211021001,
211021010, 211100000, 211100001, 211100002, 211100010, 211100011, 211100020, 211100021, 211100100, 211100101,
211100110, 211100111, 211100200, 211100201, 211100210, 211101000, 211101001, 211101010, 211101011, 211101100,
211101101, 211101110, 211110000, 211110001, 211110002, 211110010, 211110011, 211110100, 211110101, 211110110,
211110111, 211111000, 211111001, 211111010, 211111011, 211111100, 211111101, 212000000, 212000001, 212000002,
212000010, 212000011, 212000020, 212000100, 212000101, 212000110, 212000200, 212001000, 212001001, 212001002,
212001010, 212001011, 212001100, 212001101, 212002000, 212002001, 212010000, 212010001, 212010002, 212010010,
212010011, 212010020, 212010100, 212010101, 212010110, 212011000, 212011001, 212011002, 212011010, 212011011,
212100000, 212100001, 212100002, 212100010, 212100011, 212100020, 212100100, 212100101, 212100110, 212100200,
212101000, 212101001, 212101010, 212101011, 212101100, 220000000, 220000001, 220000002, 220000010, 220000011,
220000020, 220000100, 220000101, 220000102, 220000110, 220000111, 220000200, 220000201, 220000202, 220001000,
220001001, 220001002, 220001010, 220001011, 220001020, 220001100, 220001101, 220001102, 220001110, 220001111,
220002000, 220002001, 220002002, 220002010, 220002011, 220002020, 220010000, 220010001, 220010002, 220010010,
220010011, 220010020, 220010100, 220010101, 220010102, 220010110, 220010111, 220010200, 220010201, 220010202,
220011000, 220011001, 220011010, 220011011, 220011020, 220011100, 220011101, 220011110, 220011111, 220020000,
220020001, 220020010, 220020100, 220020101, 220020110, 220020200, 220020201, 220100000, 220100001, 220100002,
220100010, 220100011, 220100020, 220100100, 220100101, 220100110, 220100111, 220100200, 220100201, 220101000,
220101001, 220101010, 220101100, 220101101, 220101110, 220102000, 220102001, 220102010, 220110000, 220110001,
220110002, 220110010, 220110011, 220110100, 220110101, 220111000, 220111001, 220111010, 220111100, 220111101,
220200000, 220200001, 220200002, 220200010, 220200011, 220200020, 220200100, 220200101, 220200110, 220200111,
220201000, 220201001, 220201010, 221000000, 221000001, 221000002, 221000010, 221000011, 221000020, 221000100,
221000101, 221000110, 221000200, 221000201, 221001000, 221001001, 221001002, 221001010, 221001011, 221001100,
221001101, 221002000, 221002001, 221002002, 221002010, 221002011, 221010000, 221010001, 221010002, 221010010,
221010011, 221010020, 221010100, 221010101, 221010110, 221011000, 221011001, 221011010, 221011011, 221020000,
221020001, 221020010, 221020100, 221100000, 221100001, 221100002, 221100010, 221100011, 221100020, 221100100,
221100101, 221100110, 221100200, 221100201, 221101000, 221101001, 221101010, 221101100, 221101101, 221110000,
221110001, 221110002, 221110010, 221110011, 221110100, 221110101, 300000000, 300000001, 300000010, 300000011,
300000100, 300000101, 300000110, 300000111, 300001000, 300001001, 300001010, 300001011, 300001100, 300001101,
300001110, 300001111, 300010000, 300010001, 300010010, 300010011, 300010100, 300010101, 300010110, 300010111,
300011000, 300011001, 300011010, 300011011, 300011100, 300011101, 300011110, 300011111, 300100000, 300100001,
300100010, 300100011, 300100100, 300100101, 300100110, 300100111, 300101000, 300101001, 300101010, 300101011,
300101100, 300101101, 300101110, 300101111, 300110000, 300110001, 300110010, 300110011, 300110100, 300110101,
300110110, 300110111, 300111000, 300111001, 300111010, 300111011, 300111100, 300111101, 300111110, 300111111,
301000000, 301000001, 301000010, 301000011, 301000100, 301000101, 301000110, 301000111, 301001000, 301001001,
301001010, 301001011, 301001100, 301001101, 301001110, 301001111, 301010000, 301010001, 301010010, 301010011,
301010100, 301010101, 301010110, 301010111, 301011000, 301011001, 301011010, 301011011, 301011100, 301011101,
301011110, 301011111, 301100000, 301100001, 301100010, 301100011, 301100100, 301100101, 301100110, 301100111,
301101000, 301101001, 301101010, 301101011, 301101100, 301101110, 301110000, 301110001, 301110010, 301110011,
301110100, 301110101, 301110110, 301110111, 301111000, 301111001, 301111100, 310000000, 310000001, 310000010,
310000011, 310000100, 310000101, 310000110, 310000111, 310001000, 310001001, 310001010, 310001011, 310001100,
310001101, 310001110, 310001111, 310010000, 310010001, 310010010, 310010011, 310010100, 310010101, 310010110,
310010111, 310011000, 310011001, 310011010, 310011011, 310011100, 310011101, 310011110, 310011111, 310100000,
310100001, 310100010, 310100011, 310100100, 310100101, 310100110, 310100111, 310101000, 310101001, 310101010,
310101100, 310101101, 310101110, 310110000, 310110001, 310110010, 310110011, 310110100, 310110101, 310111000,
310111001, 310111010, 310111100, 310111101, 311000000, 311000001, 311000010, 311000011, 311000100, 311000101,
311000110, 311001000, 311001001, 311001010, 311001011, 311001100, 311001101, 311010000, 311010001, 311010010,
311010011, 311010100, 311010101, 311010110, 311011000, 311011001, 311011010, 311011011, 311100000, 311100001,
311100010, 311100011, 311100100, 311100101, 311100110, 311101000, 311101001, 311101010, 311101100, 311110000,
311110001, 311110010, 311110011, 311110100, 311110101, 1000000000
总计7116行数据,光看数据并没有发现什么特殊的规律,果断将表打到代码里。事实证明,偷懒是行不通的
还是老老实实回来看数据吧
将数据归类,不难发现,所有符合要求的数,全都由13个基础数据组成(1,2,3,10,11,12,13,20,21,22,30,31),于是其实只要将每两位合并为一个13进制数,进行枚举,即可实现剪枝,于是,直接上代码
#include <bits/stdc++.h>using namespace std;const int N = 1e9 + 1;
const int GOOD_NUMBER = 7116;
const int GOOD_BASE = 13;#define ll long longll goodNumbers[GOOD_BASE] = {0LL, 1LL, 2LL, 3LL, 10LL, 11LL, 12LL, 13LL, 20LL, 21LL, 22LL, 30LL, 31LL};
ll goodPos[5] = {0LL, 0LL, 0LL, 0LL, 1LL};ll sumN(ll a) {ll sum = 0LL;while (a > 0LL) {sum = sum + a % 10LL;a /= 10LL;}return sum;
}bool isGood(ll a) {return sumN(a * a) == sumN(a) * sumN(a);
}ll makeNumber() {ll nowNumber = goodNumbers[goodPos[4]] + goodNumbers[goodPos[3]] * 100LL + goodNumbers[goodPos[2]] * 10000LL + goodNumbers[goodPos[1]] * 1000000LL + goodNumbers[goodPos[0]] * 100000000LL;if (nowNumber == 0 || nowNumber > N) {return N;}return nowNumber;
}ll nextNumber() {for (int i = 4; i >= 0; i--) {goodPos[i] = (goodPos[i] + 1) % GOOD_BASE;if (goodPos[i] != 0) {break;}}return makeNumber();
}int main() {ios_base::sync_with_stdio(false), cin.tie(nullptr);int a, b;cin >> a >> b;ll now = makeNumber();int re = 0;while (a > now) {now = nextNumber();}while (a <= now && now <= b) {if (isGood(now)) {// if (allGoodNumbers[re] != now) {// cout << allGoodNumbers[re] << "*" << now << endl;// break;// }re++;}now = nextNumber();}cout << re << endl;
}// int main() {
// ios_base::sync_with_stdio(false), cin.tie(nullptr);
// int count = 0;
// for (ll i = 1; i <= N; i++) {
// if (isGood(i)) {
// count++;
// // cout << count << "*" << i << endl;
// if (count % 1000 == 0) {
// cout << i << "," << endl;
// } else {
// cout << i << ",";
// }
// }
// }
// }
//
// int main() {
// ios_base::sync_with_stdio(false), cin.tie(nullptr);
// int a, b;
// cin >> a >> b;
// int startPos = -1;
// int endPos = -1;
// for (int i = 0; i < GOOD_NUMBER; i++) {
// if (allGoodNumbers[i] < a) { // allGoodNumbers为打表逻辑,会导致代码超长
// startPos = i;
// }
// if (goodNumbers[i] >= b) {
// endPos = i;
// break;
// }
// }
// cout << endPos - startPos << endl;
// }