I have written down three different 5-digit perfect squares, which :
* between them use five different digits.
* each of the five digits is used a different number of times
* the five numbers of times being the same as the five digits of the perfect squares.
* no digit is used its own number of times.
* If you knew which digit I have used just once, you could deduce my three squares with certainty.
What are the three perfect squares?
Source:
a math puzzle posted to the SAS Discussion Forum (from New Scientist magazine).
The total number of digits is 15, the frequencies of each digit are all different. Since the sum: 1+2+3+4+5 = 15, the digits must be 1,2,3,4,5.
There are nine 5-digit squares composed only of the digits 1 through 5:
[12321, 12544, 13225, 33124, 34225, 35344, 44521, 52441, 55225]
Combining these 3 at a time, doing a cumulative count of the number of occurrences of each digit, eliminating the ones where a digit's count is other than 1 through 5, and finally excluding those with 1 one, 2 twos, 3 threes etc leaves these sets of 3 squares followed by the counts of each digit:
12321 12544 55225 [3, 5, 1, 2, 4]
12321 33124 34225 [3, 5, 4, 2, 1]
12321 44521 55225 [3, 5, 1, 2, 4]
12321 52441 55225 [3, 5, 1, 2, 4]
12544 34225 44521 [2, 4, 1, 5, 3]
12544 34225 52441 [2, 4, 1, 5, 3]
34225 44521 52441 [2, 4, 1, 5, 3]
In every case but one, the '3' is counted only once. The odd man is
12321 33124 34225 [3, 5, 4, 2, 1]
The three squares must be: {12321, 33124, 34225}
--------------
squares = [i**2 for i in range(100,317)]
sqs = []
no = '06789'
for s in squares:
good = True
for c in str(s):
if c in no:
good = False
if good:
sqs.append(s)
print(sqs)
from itertools import combinations
target = [1,2,3,4,5]
for comb in combinations(sqs,3):
score = []
sview = list(str(comb[0])+str(comb[1])+str(comb[2]))
view = [int(i) for i in sview]
for i in range(1,6):
if view.count(i) == i:
continue
score.append(view.count(i))
if sorted(score) == target:
print(int(''.join(sview[0:5])), int(''.join(sview[5:10])), int(''.join(sview[10:15])), score)
|
Posted by Larry
on 2023-08-02 10:24:54 |