8675309와 같은 음이 아닌 정수를 취하고 모든 인접 숫자 쌍 간의 차이의 절대 값을 계산하십시오.
들어 8675309우리가 얻을 |8-6| = 2, |6-7| = 1, |7-5| = 2, |5-3| = 2, |3-0| = 3, |0-9| = 9. 이 결과를 함께 묶으면 음수가 아닌 다른 정수가 더 작아집니다 212239. 프로세스를 반복하여 제공 11016한 후, 0115어느 자리,뿐만 간소화를 기록하지 않는 것이 관례 115가되고, 04또는 4더 감소 될 수 없다. 이 모든 값을 합하면 우리는 얻을 수 8675309 + 212239 + 11016 + 115 + 4 = 8898683있습니다.
자릿수 차이 합 (또는 DDS)을 숫자의 자릿수 차이를 반복하여 가져 와서 새 숫자를 만든 다음 모든 결과 숫자를 원본에 추가하는이 작업으로 정의 해 보겠습니다.
해당 DDS 시퀀스에서 처음 20 개의 값은 다음과 같습니다.
N DDS(N)
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 11
11 11
12 13
13 15
14 17
15 19
16 21
17 23
18 25
19 27
다음은 그래프가 매우 흥미로운 첫 번째 10000 값입니다 .
특히 1000 또는 100으로 플롯 할 때 동일하게 보이기 때문에 :
(나는 그것을 치과 의사의 계단 이라고 부를 것이다 ...)
도전
음수가 아닌 정수를 사용하여 DDS 값을 인쇄하거나 반환하는 프로그램 또는 함수를 작성하십시오. 예를 들어 입력이 8675309이면 출력은이어야합니다 8898683.
바이트 단위의 가장 짧은 코드가 이깁니다.









