My feeble calculator can't check this

Logic Level 3

A 1 A 2 A 3 A 16 × 150 % = A 2 A 3 A 15 A 16 A 1 \large \overline{A_1 A_2 A_3 \ldots A_{16}} \times 150\% = \overline{A_2 A_3 \ldots A_{15}A_{16} A_1}

How many distinct 16-digit positive integer(s) satisfy the condition that if I move its first digit to the last digit, the resultant number increases by 50%?


The answer is 5.

This section requires Javascript.
You are seeing this because something didn't load right. We suggest you, (a) try refreshing the page, (b) enabling javascript if it is disabled on your browser and, finally, (c) loading the non-javascript version of this page . We're sorry about the hassle.

3 solutions

Daniel Turizo
Jul 18, 2015

let's define x x as x = A 2 A 3 A 16 x = \overline {A_2 A_3 \ldots A_{16} } , then 1 0 14 x < 1 0 15 10^{14} \le x < 10^{15} . Now the equation can be rewritten as: ( 1 0 15 A 1 + x ) 1.5 = 10 x + A 1 \left( {10^{15} A_1 + x} \right) \cdot 1.5 = 10x + A_1 x = 1.5 1 0 15 1 10 1.5 A 1 x = \frac{{1.5 \cdot 10^{15} - 1}}{{10 - 1.5}}A_1 x = 176470588235294 × A 1 x = {\rm 176470588235294} \times A_1 x 1 . 76 10 14 A 1 x \approx {\rm 1}{\rm .76} \cdot {\rm 10}^{{\rm 14}} A_1 We know that A 1 A_1 is a single digit positive integer. Therefore, as long as 1 0 14 x < 1 0 15 10^{14} \le x < 10^{15} , any digit is valid. The former condition only holds for the digits 1 1 to 5 5 , as for A 1 = 6 A_1 = 6 , x x becomes greater than 1 0 15 10^{15} . In conclusion, there are only 5 5 solutions to the equation, and so the answer is 5 \boxed{5} .

Why did you write 10^14<x<10^15? (Excuse the crude remake).

Oscar Morales - 4 years, 5 months ago

Log in to reply

Because x x is a 15 15 digit number. The least 15 digit unmber is 100000000000000 = 1 0 14 100000000000000 = 10^{14} . The greater 15 digit number is 9999999999999999 = 1 0 15 1 9999999999999999 = 10^{15}-1 , hence the said inequality.

Daniel Turizo - 4 years, 3 months ago

Very simply, you can say that there are only 5 combinations because: A16 cannot be an odd number because if the last digit of the 16 digit number (A16) is multiplied by 1.5 the 16 digit number will not be an integer, but it must be an integer. There are only 5 cases where multiplying the last digit by 1.5 yields an integer, which are: A16= 0,2,4,6,8. Now, we know that A16 can only be those 5. How do we know that there is one unique solution for the remaining A values per A16 value, and not many? Because there is a direct linear relationship between the numbers, a direct relationship of 1.5.

Bobba Bobba - 5 months ago
Sungil Cho
Oct 29, 2015

The 5 numbers are:

1176470588235294

2352941176470588

3529411764705882

4705882352941176

5882352941176470

Interesting?

Relevant question : What is the decimal representation of 1 17 \dfrac1{17} ?

Pi Han Goh - 5 years, 7 months ago

Log in to reply

Oh, it's actually ... one of the solutions!? Well, enough math's for me, good night :)

Nikola Car - 2 years, 4 months ago

I literally just guessed the answer and got it

anjaly jeyacanthan - 1 year, 1 month ago
Ervin Varga
Aug 8, 2020

Below is the Python 3 program to find the solution to this puzzle.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
def eval(digits):
    value = 0
    for i in range(len(digits)):
        value = 10 * value + digits[i]
    return value


def find_numbers():
    count = 0

    for pivot in range(1, 10):
        carry1 = carry2 = 0
        digits1 = [0] * 16
        digits2 = [0] * 16
        digits1[0] = digits2[-1] = pivot

        for i in range(15, -1, -1):
            target = digits2[i] * 2 + carry1;
            carry1 = target // 10
            target %= 10

            for digit in range(10):
                candidate = 3 * digit + carry2
                if candidate % 10 == target:
                    digits1[i] = digits2[i - 1] = digit
                    carry2 = candidate // 10
                    break

        if 3 * eval(digits1) == 2 * eval(digits2):
            count += 1
            print("Solution with A1 =", pivot, ":", digits1)

    return count


if __name__ == "__main__":
    print("Total numbers found:", find_numbers()) 

0 pending reports

×

Problem Loading...

Note Loading...

Set Loading...