Usuario PPCG y mod elegido, @Dennis se convirtió en el segundo usuario en ganar más de 100k rep.
Esta es una idea totalmente original, que no obtuve de nadie más , ¡pero hagamos un desafío basado en su ID de usuario, 12012
como tributo!
Al mirarlo, notará que hay dos "secciones" distintas en su ID.
12
y
012
Ambas secciones suman un 3. Esa es una propiedad bastante interesante.
Definamos un "número Dennis 2.0" como cualquier número entero positivo donde cada subsecuencia máxima de dígitos estrictamente crecientes suma al mismo número. Por ejemplo,
123
es un número de Dennis 2.0 porque solo hay una sublista máxima de dígitos estrictamente crecientes, y suma 6. Además, 2.846.145 también es un número de Dennis 2.0 porque las tres sublistas máximas de dígitos crecientes, a saber
28
46
145
Todo suma a 10
. Además, los números que solo repiten el mismo dígito deben ser números de Dennis 2.0 porque, por ejemplo, 777
se pueden dividir en
7
7
7
que claramente todos suman siete.
Un número como no42
es un número Dennis 2.0, ya que se divide en
4
2
que claramente no suman el mismo número.
El reto
Debe escribir un programa o función para determinar si un número dado es un número Dennis 2.0 o no. Puede tomar entradas y salidas en cualquier formato de entrada razonable, por ejemplo, como una cadena, como un número, de un archivo, argumentos de función / retorno, de STDIN / STDOUT, etc. y luego devolver un valor verdadero si este número es un Dennis 2.0 número y un valor falso si no lo es. Como referencia, aquí está cada número Dennis 2.0 hasta 1,000:
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
Se aplican las lagunas estándar, ¡y gana la respuesta más corta medida en bytes!
1236|6
,
entre ellos? Esto probablemente lo está estirando mucho.