Користувач PPCG та обраний мод, @Dennis просто став другим користувачем, який заробив понад 100 тис. Реп!
Це абсолютно оригінальна ідея, яку я не отримав від когось іншого , але давайте зробимо виклик, виходячи з його ідентифікатора користувача, 12012
як данина!
Дивлячись на це, ви помітите, що до його посвідчення особи є два чіткі "секції".
12
і
012
Обидва ці розділи складають до 3. Це досить цікава властивість.
Давайте визначимо "число Денніса 2.0" як будь-яке додатне ціле число, де кожне максимальне подання суворо зростаючих цифр дорівнює одному і тому ж номеру. Наприклад,
123
є числом Dennis 2.0, оскільки існує лише один максимальний підпис під суттєво зростаючими цифрами, і він дорівнює 6. Крім того, 2846,145 також є числом Dennis 2.0, оскільки три максимальні підписи збільшуваних цифр, а саме
28
46
145
Усі суми до 10
. Крім того, числа, які просто повторюють одну і ту ж цифру, повинні бути числами Dennis 2.0, оскільки, наприклад, 777
їх можна розбити на
7
7
7
що, очевидно, все становить сім.
Таке число, як 42
це не номер Dennis 2.0, оскільки воно розбито на
4
2
які явно не підсумовують однакову кількість.
Змагання
Ви повинні написати програму чи функцію, щоб визначити, чи є це число Dennis 2.0 чи ні. Ви можете приймати введення та вихід у будь-якому розумному форматі введення, наприклад, у вигляді рядка, у вигляді числа, з файлу, аргументів функцій / повернення, зі STDIN / STDOUT тощо, а потім повернути триєдне значення, якщо це число Dennis 2.0 число і помилкове значення, якщо це не так. Для довідки, ось кожен номер Dennis 2.0 до 1000:
1
2
3
4
5
6
7
8
9
11
12
13
14
15
16
17
18
19
22
23
24
25
26
27
28
29
33
34
35
36
37
38
39
44
45
46
47
48
49
55
56
57
58
59
66
67
68
69
77
78
79
88
89
99
101
111
123
124
125
126
127
128
129
134
135
136
137
138
139
145
146
147
148
149
156
157
158
159
167
168
169
178
179
189
202
222
234
235
236
237
238
239
245
246
247
248
249
256
257
258
259
267
268
269
278
279
289
303
312
333
345
346
347
348
349
356
357
358
359
367
368
369
378
379
389
404
413
444
456
457
458
459
467
468
469
478
479
489
505
514
523
555
567
568
569
578
579
589
606
615
624
666
678
679
689
707
716
725
734
777
789
808
817
826
835
888
909
918
927
936
945
999
Застосовуються стандартні лазівки, і найкоротша відповідь, виміряна в байтах, виграє!
1236|6
,
між ними? Це, мабуть, це сильно розтягує.