-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathp061.py
More file actions
106 lines (86 loc) · 5.09 KB
/
p061.py
File metadata and controls
106 lines (86 loc) · 5.09 KB
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
from sets import Set
def octagonal(n):
return n*(3*n-2)
def heptagonal(n):
return (n*(5*n-3))/2
def hexagonal(n):
return n*(2*n-1)
def pentagonal(n):
return (n*(3*n-1))/2
def square(n):
return n*n
def triangle(n):
return (n*(n+1))/2
def first(n):
return str(n)[:2:]
def last(n):
return str(n)[2::]
TRI = [1035, 1081, 1128, 1176, 1225, 1275, 1326, 1378, 1431, 1485, 1540, 1596, 1653, 1711, 1770, 1830, 1891,
1953, 2016, 2080, 2145, 2211, 2278, 2346, 2415, 2485, 2556, 2628, 2701, 2775, 2850, 2926, 3003, 3081,
3160, 3240, 3321, 3403, 3486, 3570, 3655, 3741, 3828, 3916, 4005, 4095, 4186, 4278, 4371, 4465, 4560,
4656, 4753, 4851, 4950, 5050, 5151, 5253, 5356, 5460, 5565, 5671, 5778, 5886, 5995, 6105, 6216, 6328,
6441, 6555, 6670, 6786, 6903, 7021, 7140, 7260, 7381, 7503, 7626, 7750, 7875, 8001, 8128, 8256, 8385,
8515, 8646, 8778, 8911, 9045, 9180, 9316, 9453, 9591, 9730, 9870]
SQU = [1024, 1089, 1156, 1225, 1296, 1369, 1444, 1521, 1681, 1764, 1849, 1936, 2025, 2116, 2209, 2304,
2401, 2601, 2704, 2809, 2916, 3025, 3136, 3249, 3364, 3481, 3721, 3844, 3969, 4096, 4225,
4356, 4489, 4624, 4761, 5041, 5184, 5329, 5476, 5625, 5776, 5929, 6084, 6241, 6561, 6724,
6889, 7056, 7225, 7396, 7569, 7744, 7921, 8281, 8464, 8649, 8836, 9025, 9216, 9409, 9604, 9801]
PEN = [1001, 1080, 1162, 1247, 1335, 1426, 1520, 1617, 1717, 1820, 1926, 2035, 2147, 2262, 2380, 2501, 2625,
2752, 2882, 3015, 3151, 3290, 3432, 3577, 3725, 3876, 4030, 4187, 4347, 4510, 4676, 4845, 5017, 5192,
5370, 5551, 5735, 5922, 6112, 6305, 6501, 6902, 7107, 7315, 7526, 7740, 7957, 8177, 8626,
8855, 9087, 9322, 9560, 9801]
HEX = [1035, 1128, 1225, 1326, 1431, 1540, 1653, 1770, 1891, 2016, 2145, 2278, 2415, 2556, 2701, 2850, 3003,
3160, 3321, 3486, 3655, 3828, 4005, 4186, 4371, 4560, 4753, 4950, 5151, 5356, 5565, 5778, 5995, 6216,
6441, 6670, 6903, 7140, 7381, 7626, 7875, 8128, 8385, 8646, 8911, 9180, 9453, 9730]
HEP = [1071, 1177, 1288, 1404, 1525, 1651, 1782, 1918, 2059, 2205, 2356, 2512, 2673, 2839, 3010, 3186, 3367,
3553, 3744, 3940, 4141, 4347, 4558, 4774, 4995, 5221, 5452, 5688, 5929, 6175, 6426, 6682, 6943, 7209,
7480, 7756, 8037, 8323, 8614, 8910, 9211, 9517, 9828]
OCT = [1045, 1160, 1281, 1408, 1541, 1680, 1825, 1976, 2133, 2296, 2465, 2640, 2821, 3008, 3201, 3605,
3816, 4033, 4256, 4485, 4720, 4961, 5208, 5461, 5720, 5985, 6256, 6533, 6816, 7105, 7701, 8008,
8321, 8640, 8965, 9296, 9633, 9976]
A = Set()
for item in TRI:
A.add(item)
for item in SQU:
A.add(item)
for item in PEN:
A.add(item)
for item in HEX:
A.add(item)
for item in HEP:
A.add(item)
for item in OCT:
A.add(item)
for i1 in A:
for i2 in A:
if last(i1) == first(i2):
for i3 in A:
if last(i2) == first(i3):
for i4 in A:
if last(i3) == first(i4):
for i5 in A:
if last(i4) == first(i5):
for i6 in A:
if last(i5) == first(i6):
if last(i6) == first(i1):
numoct = 0
numhep = 0
numhex = 0
numpen = 0
numsqu = 0
numtri = 0
if (i1 in OCT) or (i2 in OCT) or (i3 in OCT) or (i4 in OCT) or (i5 in OCT) or (i6 in OCT):
numoct += 1
if (i1 in HEP) or (i2 in HEP) or (i3 in HEP) or (i4 in HEP) or (i5 in HEP) or (i6 in HEP):
numhep += 1
if (i1 in HEX) or (i2 in HEX) or (i3 in HEX) or (i4 in HEX) or (i5 in HEX) or (i6 in HEX):
numhex += 1
if (i1 in PEN) or (i2 in PEN) or (i3 in PEN) or (i4 in PEN) or (i5 in PEN) or (i6 in PEN):
numpen += 1
if (i1 in SQU) or (i2 in SQU) or (i3 in SQU) or (i4 in SQU) or (i5 in SQU) or (i6 in SQU):
numsqu += 1
if (i1 in TRI) or (i2 in TRI) or (i3 in TRI) or (i4 in TRI) or (i5 in TRI) or (i6 in TRI):
numtri += 1
if numoct != 0 and numhep != 0 and numhex != 0 and numpen != 0 and numsqu != 0 and numtri != 0:
print i1 + i2 + i3 + i4 + i5 + i6
# CORRECTA: 28684