Giải pháp hackerrank siêu chữ số python

Cho hai số dương N và X. Nhiệm vụ là tìm tổng các chữ số của một số được tạo bởi N lặp lại X số lần cho đến khi tổng trở thành một chữ số

ví dụ.   

Input : N = 24, X = 3
Output : 9
Number formed after repeating 24 three time = 242424
Sum = 2 + 4 + 2 + 4 + 2 + 4
    = 18
Sum is not the single digit, so finding 
the sum of digits of 18,
1 + 8 = 9

Input : N = 4, X = 4
Output : 7

Khuyến khích. Vui lòng thử cách tiếp cận của bạn trên {IDE} trước, trước khi chuyển sang giải pháp

Như đã thảo luận trong bài đăng này, tổng đệ quy của các chữ số là 9 nếu số đó là bội số của 9, nếu không thì n % 9. Vì phép chia hết và số học mô-đun tương thích với phép nhân, nên chúng ta chỉ cần tìm kết quả cho một lần xuất hiện, nhân kết quả với x và tìm lại kết quả.  

Tính năng này hoạt động như thế nào? .
Lets N = 24 and X = 3. 
Vì vậy, sumUntilSingle[N] = 2 + 4 = 6.
Nhân 6 với 3 = 18 
sumUntilSingle[18] = 9.

Dưới đây là việc thực hiện phương pháp này.   

C++




9
01

9
02

9
03

9
04

9
05
9
06
9
07

 

9
08

9
0
9
1
9
0
9
3

9
4

9
5
9
6
9
7

9
8
9
9
9
010

9
5
9
9
9
013

9
014

 

9
015

9
016

9
03

9
0
9
019
9
0
9
021
9
0
9
023

9
4

9
5
9
0
9
027

9
5
9
9
9
030

9
014

 

9
032

9
0
9
034

9
4

9
5
9
0
9
038

9
5
9
040

9
5
9
9
9
010

9
014

Java




9
045

9
02

9
03

 

9
048
9
049

9
5

9
5
9
08

9
5
9
054
9
0
9
1
9
0
9
3

9
5
9
4

9
8
9
6
9
063____1064
9
065

9
066
9
9
9
064
9
069

9
8
9
9
9
072
9
073
9
074
9
064______1076
9
073
9
078
9
073
9
080

9
5
9
014

9
5

9
5
9
015

9
5
9
016

9
5
9
03

9
5
9
054
9
0
9
019
9
0
9
021
9
0
9
023

9
5
9
4

9
8
9
0
9
12

9
8
9
9
9
030

9
5
9
014

9
8

9
5
9
032

9
5
9
22
9
054
9
24
9
25

9
5
9
4

9
8
9
0
9
30
9
31
9
32
9
33
9
069

9
8
9
36

9
5
9
014

9
014

 

9
40

Python3




9
41

9
42

9
43

 

9
44

9
45
9
46

9
5
9
6
9
49
9
50
9
50
9
064
9
53

9
8
9
9
9
064

9
5
9
9
9
59_______160
9
073
9
50
9
50
9
064
9
065
9
66
9
073
9
68
9
59
9
60
9
073
9
065

Chủ Đề