Problem Statement
We generate two infinitely long numbers. The first number is generated by writing down all positive consecutive integers, while the second is generated by writing down all of their squares. We then find the sum of these two numbers. Here are the first 33 digits of the calculation:
123456789101112131415161718192021... + 149162536496481100121144169196225... = 272619325597593231536305887388246...
The first digit of the result is 2, the second digit is 7, the third is 2 and so on.
Given an
Definition
- Class:
- LongNumber
- Method:
- findDigit
- Parameters:
- int
- Returns:
- int
- Method signature:
- int findDigit(int k)
- (be sure your method is public)
Constraints
- k will be between 1 and 2147483647 inclusive.
Examples
1
Returns: 2
5
Returns: 1
78
Returns: 5
1000000
Returns: 6
83916724
Returns: 8
followed by 8 9's with overflow
147538842
Returns: 0
followed by 7 9's with overflow
117250829
Returns: 5
followed by 7 9's with overflow
10502158
Returns: 7
followed by 7 9's with overflow
582536
Returns: 5
followed by 5 9's with overflow
379810
Returns: 3
followed by 5 9's with overflow
68708
Returns: 1
followed by 5 9's without overflow
2147483647
Returns: 8
1780243932
Returns: 1
1899805428
Returns: 2
1741917165
Returns: 7
1784488481
Returns: 9
279893794
Returns: 5
1471313522
Returns: 0
97180482
Returns: 4
857168575
Returns: 7
2037788404
Returns: 1
1443451632
Returns: 2
1583394900
Returns: 6
1244572457
Returns: 8
843563866
Returns: 0
2093151432
Returns: 9
1391343239
Returns: 9
31235306
Returns: 2
1666328478
Returns: 1
507134574
Returns: 7
133689063
Returns: 6
1458700812
Returns: 2
2147483646
Returns: 5
2147483645
Returns: 2
1780243932
Returns: 1
2147483647
Returns: 8
582536
Returns: 5
2147483600
Returns: 9
22
Returns: 3
59
Returns: 2