├── 107
├── Euler 107.py
├── Euler107.txt
└── __init__.py
├── 109
├── Euler 109.py
└── __init__.py
├── .DS_Store
├── .gitignore
├── .idea
├── .name
├── PrEuler.iml
├── encodings.xml
├── misc.xml
├── modules.xml
├── scopes
│ └── scope_settings.xml
├── vcs.xml
└── workspace.xml
├── 001
├── Euler1.hs
├── Euler1.java
├── Euler1.js
└── Euler1.py
├── 002
├── Euler 2.py
├── Euler2.hs
├── Euler2.java
└── Euler2.js
├── 003
└── Euler3.js
├── 004
├── Euler 4.py
├── Euler4.java
└── Euler4.js
├── 005
├── Euler5.java
└── Euler5.js
├── 006
├── Euler 6.js
└── Euler 6.py
├── 007
└── Euler 7.js
├── 009
└── Euler9.java
├── 027
└── Euler 27.py
├── 033
└── euler33.py
├── 038
└── Euler 38.py
├── 040
└── Euler 40.py
├── 049
├── .idea
│ ├── .name
│ ├── Euler 49.iml
│ ├── encodings.xml
│ ├── inspectionProfiles
│ │ └── profiles_settings.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── scopes
│ │ └── scope_settings.xml
│ ├── vcs.xml
│ └── workspace.xml
└── Euler 49.py
├── 050
├── Euler 50 (Charles Dolan's conflicted copy 2013-05-16).py
└── Euler 50.py
├── 054
├── Euler54.py
└── poker.txt
├── 059
├── Euler 59.py
└── cipher1.txt
├── 082
├── Euler 82.py
└── matrix.txt
├── 083
├── Euler 83.js
├── Euler 83.py
└── matrix.txt
└── 086
├── Euler 86.py
└── euler861.py
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Eddolan/PrEuler/d67c5de83f67ed15ee1ed671efa35136652790e9/.DS_Store
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_store
2 |
--------------------------------------------------------------------------------
/.idea/.name:
--------------------------------------------------------------------------------
1 | PrEuler
--------------------------------------------------------------------------------
/.idea/PrEuler.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/scopes/scope_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/workspace.xml:
--------------------------------------------------------------------------------
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 |
49 |
50 |
51 | true
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 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 | 1420271150686
255 |
256 | 1420271150686
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 |
370 |
371 |
372 |
373 |
374 |
375 |
376 |
377 |
378 |
379 |
380 |
381 |
382 |
383 |
384 |
385 |
386 |
387 |
388 |
389 |
390 |
391 |
392 |
393 |
394 |
395 |
396 |
397 |
398 |
399 |
400 |
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 |
418 |
419 |
--------------------------------------------------------------------------------
/001/Euler1.hs:
--------------------------------------------------------------------------------
1 | sum [ x | x <- [1..1000], x % 3 == 0 || x % 5 == 0 ]
--------------------------------------------------------------------------------
/001/Euler1.java:
--------------------------------------------------------------------------------
1 |
2 | public class Euler1 {
3 | private static int max = 100;
4 | public static void main(String[] args) {
5 | System.out.println(findSum());
6 | }
7 |
8 | private static int findSum() {
9 | int total = 0;
10 | for (int i = 3; i < max; i++) {
11 | if (i % 3 == 0 || i % 5 == 0) total += i;
12 | }
13 | return total;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/001/Euler1.js:
--------------------------------------------------------------------------------
1 | (function euler1() {
2 | var sum = 0;
3 | for (var x = 0; x<1000; x++){
4 | if (x % 3 === 0 || x % 5 === 0) {
5 | sum += x;
6 | }
7 | }
8 | console.log(sum);
9 | return sum;
10 | })();
11 |
--------------------------------------------------------------------------------
/001/Euler1.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddie'
2 |
3 |
4 | def euler1(num_max):
5 | temp_list =[]
6 | for x in range(100):
7 | if x%5==0:
8 | temp_list.append(x)
9 | elif x%3==0:
10 | temp_list.append(x)
11 | y = sum(temp_list)
12 | return y
13 |
14 | print euler1(100)
15 |
16 |
17 | print sum([x for x in range(100) if x%3==0 or x%5==0])
18 |
--------------------------------------------------------------------------------
/002/Euler 2.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddie'
2 |
3 | def fibo(n):
4 | sum = 0
5 | a, b= 0 , 1
6 | c = a + b
7 | while c < n:
8 | if c % 2 == 0:
9 | sum = sum + c
10 | a, b = b , c
11 | c = a + b
12 |
13 | return sum
14 |
15 | print fibo(4000000)
16 |
17 |
--------------------------------------------------------------------------------
/002/Euler2.hs:
--------------------------------------------------------------------------------
1 | euler2 = sum [ x | x <- takeWhile (<= 4000000) fibs, even x]
2 | where
3 | fibs = 1 : 1 : zipWith (+) fibs (tail fibs)
--------------------------------------------------------------------------------
/002/Euler2.java:
--------------------------------------------------------------------------------
1 |
2 | public class Euler2 {
3 | public static void main(String[] args) {
4 | System.out.println(fibonacci());
5 | }
6 |
7 | private static int fibonacci() {
8 | int n1 = 1;
9 | int n2 = 2;
10 | int total = 0;
11 | while (n2 < 4000000) {
12 | if (n2 % 2 == 0) total += n2;
13 | int temp = n2;
14 | n2 += n1;
15 | n1 = temp;
16 | }
17 | return total;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/002/Euler2.js:
--------------------------------------------------------------------------------
1 | (function euler2() {
2 | var sum = 0;
3 | var a = 0;
4 | var b = 1;
5 | var c;
6 | for (c = a + b; c < 4000000;){
7 | c = a + b;
8 | a = b;
9 | b = c;
10 | if (c % 2 === 0){
11 | sum += c;
12 | }
13 | }
14 | console.log(sum);
15 | return sum;
16 | })();
17 |
18 |
--------------------------------------------------------------------------------
/003/Euler3.js:
--------------------------------------------------------------------------------
1 | (function euler3() {
2 |
3 | var isPrime = function(num){
4 | if (num == 2){
5 | return true;
6 | }
7 | var limit = Math.floor(Math.sqrt(num));
8 | if (num % 2 === 0){
9 | return false;
10 | }
11 | for (var x = 3; x < limit; x = x + 2){
12 | if (num % x === 0 ){
13 | return false;
14 | }
15 | }
16 | return true;
17 | };
18 |
19 | var isFactor = function(num, factor){
20 | return (num % factor === 0);
21 | };
22 |
23 | var getFactors = function(num){
24 | var result = [];
25 | var limit = Math.floor(Math.sqrt(num));
26 | for (var i = limit;i >= 2; i -= 1) {
27 | if (isFactor(num, i) && isPrime(i)) {
28 | result.push(i);
29 | }
30 | }
31 | return result;
32 | };
33 |
34 | var result = getFactors(600851475143).shift();
35 | console.log(result);
36 | return result;
37 | })();
38 |
--------------------------------------------------------------------------------
/004/Euler 4.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddie'
2 |
3 | def math1():
4 | list1 = []
5 | for x in range(999,100,-1):
6 | for y in range(999,100,-1):
7 | if str(x*y)[0:3]==str(x*y)[-1:2:-1]:
8 | list1.append(x*y)
9 | return max(list1)
10 | print math1()
11 |
12 | print max([x*y for x in range(999,100,-1) for y in range(999,100,-1) if str(x*y)[0:3]==str(x*y)[-1:2:-1]])
--------------------------------------------------------------------------------
/004/Euler4.java:
--------------------------------------------------------------------------------
1 |
2 | public class Euler4 {
3 | public static void main(String[] args) {
4 | System.out.println(largestPalindrome());
5 | }
6 |
7 | private static int largestPalindrome() {
8 | int max = 0;
9 | for (int i = 999; i >= 100; i--) {
10 | for (int j = 999; j >= 100; j--) {
11 | int num = i * j;
12 | if (parse(num)) {
13 | if (num > max) {
14 | max = num;
15 | }
16 | }
17 | }
18 | }
19 | return max;
20 | }
21 |
22 | private static Boolean parse(Integer num) {
23 | String str = Integer.toString(num);
24 | for (int k = 0; k < str.length()/2; k++) {
25 | if (str.charAt(k) != str.charAt(str.length() - 1 - k)) return false;
26 | }
27 | return true;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/004/Euler4.js:
--------------------------------------------------------------------------------
1 | (function euler4() {
2 |
3 | var isPalendrome = function(num){
4 | var numArray = num.toString().split('');
5 | while (numArray.length > 1){
6 | if (numArray.pop() != numArray.shift()){
7 | return false;
8 | }
9 | }
10 | return true;
11 | };
12 |
13 | var testNum;
14 | var max = 0;
15 | for (var x = 999; x >= 100; x--) {
16 | for (var y = 999; y >= 100; y--) {
17 | testNum = x * y;
18 | if (isPalendrome(testNum) && testNum > max) {
19 | max = testNum;
20 | }
21 | }
22 | }
23 | console.log(max);
24 | return max;
25 | })();
--------------------------------------------------------------------------------
/005/Euler5.java:
--------------------------------------------------------------------------------
1 |
2 | public class Euler5 {
3 | public static void main(String[] args) {
4 | int max = 20;
5 | int currLcm = 2;
6 | for (int i = 3; i <= max; i++) {
7 | currLcm = lcm(currLcm, i);
8 | System.out.println(currLcm + " " + i);
9 | }
10 | //System.out.println(currLcm);
11 | }
12 |
13 | private static int lcm(int a, int b) {
14 | return ((a * b)/gcd(a,b));
15 | }
16 |
17 | private static int gcd(int a, int b) {
18 | if (b == 0) return a;
19 | return gcd(b, a % b );
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/005/Euler5.js:
--------------------------------------------------------------------------------
1 | // solution comes from Nicolas Gallagher
2 |
3 | (function euler5() {
4 | var num = 0;
5 | var i = 1;
6 | var maxDivisor = 20;
7 | var found = false;
8 |
9 | while (found === false) {
10 | num += maxDivisor;
11 | while (num % i === 0 && i <= maxDivisor) {
12 | if (i === maxDivisor) {
13 | found = true;
14 | }
15 | i++;
16 | }
17 | i = 1;
18 | }
19 | console.log(num);
20 | return num;
21 | })();
22 |
23 |
--------------------------------------------------------------------------------
/006/Euler 6.js:
--------------------------------------------------------------------------------
1 | (function euler6() {
2 |
3 | var each = function(n, cb){
4 | // iterates through all numbers 1..n and performs callback
5 | for (var i = 1; i <= n; i++){
6 | cb(i);
7 | }
8 | };
9 |
10 | var sumSquares = function(n){
11 | var sum = 0;
12 | each(n, function(i){
13 | sum += i;
14 | });
15 | return sum * sum;
16 | };
17 |
18 | var sqauresSum = function(n){
19 | var sum = 0;
20 | each(n, function(i){
21 | sum += i * i;
22 | });
23 | return sum;
24 | };
25 |
26 | var result = sumSquares(100) - sqauresSum(100);
27 | return result;
28 |
29 | })();
30 |
--------------------------------------------------------------------------------
/006/Euler 6.py:
--------------------------------------------------------------------------------
1 | __author__ = 'DT'
2 |
3 | def euler6():
4 | sum_of_squares = sum([x**2 for x in range(101)])
5 | square_of_sum = sum([y for y in range(101)])**2
6 | return (square_of_sum - sum_of_squares)
7 |
8 | print euler6()
9 |
10 | print ((sum([y for y in range(101)])**2) - (sum([x**2 for x in range(101)])))
11 |
--------------------------------------------------------------------------------
/007/Euler 7.js:
--------------------------------------------------------------------------------
1 | (function euler7() {
2 | // recursive implementation of euler7
3 | // goal is to find hte 10,001st prime number
4 | var primeListGenerator = function(n){
5 | // finds a list of n prime numbers recursibly
6 | var primes = [2];
7 | for (var x = 3; primes.length < n; x += 2){
8 | var isPrime = true;
9 | for (var i = 0; i < primes.length; i++){
10 | if (x % primes[i] === 0){
11 | isPrime = false;
12 | break;
13 | }
14 | }
15 | if (isPrime){
16 | primes.push(x);
17 | }
18 | }
19 | return primes;
20 | };
21 |
22 | var primeGenerator = function(n){
23 | // finds all prime numbers up to n recursivly
24 | // base case is returning first prime number
25 | if (n <= 2){
26 | return [2];
27 | }
28 | var sqrt = Math.floor(Math.sqrt(n));
29 | // getting a list of all primes up to sqrt n
30 | var rootPrimes = primeGenerator(sqrt);
31 | // iterating through all odd numbers from sqrt to n and checking
32 | // if its divisible by any of the existing primes
33 | var isPrime;
34 | for (var x = sqrt % 2 ? sqrt + 2 : sqrt + 1; x <= n; x += 2){
35 | isPrime = true;
36 | for (var i = 0; i < rootPrimes.length; i++){
37 | if (x % rootPrimes[i] === 0){
38 | isPrime = false;
39 | break;
40 | }
41 | }
42 | if (isPrime){
43 | rootPrimes.push(x);
44 | }
45 | }
46 | return rootPrimes;
47 | };
48 |
49 | var result = primeListGenerator(10001).pop();
50 | console.log(result);
51 | return result;
52 |
53 | })();
54 |
--------------------------------------------------------------------------------
/009/Euler9.java:
--------------------------------------------------------------------------------
1 | public class Euler9 {
2 | public static void main(String[] args) {
3 | System.out.print(pythTriplet());
4 | System.out.println(".");
5 | }
6 |
7 | public static int pythTriplet() {
8 | for (int a = 500; a > 0; a--) {
9 | for (int b = 500; b > 0; b--) {
10 | double c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
11 | if (a + b + c == 1000) {
12 | System.out.println("A is " + a + ", B is " + b + ", and C is " + (int) c + ".");
13 | System.out.println("A + B + C sums to " + 1000 + ".");
14 | System.out.print("The product of A, B, and C is ");
15 | return (a * b * (int) c);
16 | }
17 | }
18 | }
19 | return 0;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/027/Euler 27.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 |
5 | def primes(input):
6 | ## Returns a list of primes up to input
7 | if input==1 or input==2:
8 | return [2,3]
9 | else:
10 | primelist = primes(int(input**.5)+1)
11 | for x in range(primelist[-1]+2,input,2):
12 | primelist.append(x)
13 | for y in primelist[:-1]:
14 | if x%y==0:
15 | primelist.remove(x)
16 | break
17 | return primelist
18 |
19 |
20 |
21 |
22 | def isPrime(input):
23 | for x in primelist:
24 | if input % x==0:
25 | if input != x:
26 | return False
27 | return True
28 |
29 | def main():
30 | max1 = []
31 | max2 = []
32 | # consider the number 1
33 | for a in alist:
34 | bs = get_Bs(a)
35 | x , y = get_best_bs( a , bs)
36 | max1.append(x)
37 | max2.append(y)
38 |
39 |
40 |
41 |
42 | def get_Bs( a ):
43 | b = []
44 | n = 0
45 | while (primelist[n] - a - 1) < 1000:
46 | b.append (primelist[n] - a - 1)
47 | n += 1
48 | return b
49 | def refine_bs( a , bs , n):
50 | returnlist =[]
51 | for b in bs:
52 | if isPrime( n**2 + b*n + a):
53 | returnlist.append( b )
54 | return returnlist
55 | def get_best_bs( a , bs):
56 | bs1 = refine_bs( a , bs , 2)
57 | n = 3
58 | while len(bs)>0:
59 | bs1 = bs
60 | bs = refine_bs( a , bs , n)
61 | n += 1
62 | if len(bs) == 0:
63 | bs = bs1
64 | return bs , n
65 |
66 | primelist = primes( 2200 )
67 | alist = [ prime for prime in primelist if prime<1000]
68 |
69 | main()
--------------------------------------------------------------------------------
/033/euler33.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 | def main():
4 | for b in range(10,100):
5 | for a in range(10,b):
6 | test_nums( a , b)
7 |
8 | def test_nums( a , b):
9 | ans = float(a) / b
10 | sa = str(a)
11 | sb = str(b)
12 | for letter in sa:
13 | if letter != "0":
14 | if letter in sb:
15 | if sa[0] == sa[1]:
16 | a1 = int(sa[1])
17 | else:
18 | a1 = int(sa.replace(letter , ""))
19 | if sb[0] == sb[1]:
20 | b1 = int(sb[1])
21 | else:
22 | b1 = int(sb.replace(letter , ""))
23 | if a1 == 0 or b1 == 0:
24 | ans1 = 1000
25 | else:
26 | ans1 = float(a1)/b1
27 | if ans - ans1 < .0001:
28 | if ans1 - ans <.0001:
29 | print a , "+" , b , "=", ans , "----" , a1 , "+" , b1 , "=", ans1 , "----"
30 |
31 |
32 |
33 | # main()
34 |
35 |
36 |
37 | import time
38 | t=time.time()
39 |
40 | for y in range(1,10):
41 | for z in range(y,10):
42 | x=float(9)*y*z/(10*y-z)
43 | if int(x) == x and y/z < 1 and x<10:
44 | print x, y, z, str(10*y+x)+'/'+str(z+10*x), str(y)+'/'+str(z)
45 | print time.time()-t
--------------------------------------------------------------------------------
/038/Euler 38.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 |
5 |
6 |
7 | def conc( num , conc_num , a):
8 | snum = str(num)
9 | if len(snum)>9:
10 | return False
11 | if snum.count("0") > 0:
12 | return False
13 | for letter in snum:
14 | if snum.count(letter) > 1:
15 | return False
16 | if len(snum)==9:
17 | return True
18 | snum += str( conc_num * a )
19 | conc_num += 1
20 | return conc( snum , conc_num , a)
21 |
22 |
23 | for x in range(100000):
24 | if conc( x , 2 , x ):
25 | print x
26 |
27 | print 9327*2
28 |
--------------------------------------------------------------------------------
/040/Euler 40.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 | def champ(num):
5 | sum = 0
6 | count = 0
7 | while sum < num:
8 | count += 1
9 | sum += len(str(count))
10 | diff = len(str(count)) - (sum - num) - 1
11 | return int(str(count)[diff])
12 |
13 |
14 | list = [1,10,100,1000,10000,100000,1000000]
15 |
16 | ans = 1
17 | for count in list:
18 | ans = ans * champ(count)
19 |
20 | print ans
--------------------------------------------------------------------------------
/049/.idea/.name:
--------------------------------------------------------------------------------
1 | Euler 49
--------------------------------------------------------------------------------
/049/.idea/Euler 49.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/049/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/049/.idea/inspectionProfiles/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/049/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/049/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/049/.idea/scopes/scope_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/049/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/049/.idea/workspace.xml:
--------------------------------------------------------------------------------
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 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 | 1352828121237
207 | 1352828121237
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
--------------------------------------------------------------------------------
/049/Euler 49.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 | import math
4 |
5 | def isPrime(input , primelist):
6 | for x in primelist:
7 | if input % x==0:
8 | return False
9 | return True
10 |
11 | def primes(input):
12 | ## Returns a list of primes up to input
13 | if input==1 or input==2:
14 | return [2,3]
15 | else:
16 | primelist = primes(int(input**.5)+1)
17 | for x in range(primelist[-1]+2,input,2):
18 | primelist.append(x)
19 | for y in primelist[:-1]:
20 | if x%y==0:
21 | primelist.remove(x)
22 | break
23 |
24 | return primelist
25 |
26 | def perm(num1,num2):
27 | num1 = str(num1)
28 | num2 = str(num2)
29 | if num1[0] in num2:
30 | if num1[1] in num2:
31 | if num1[2] in num2:
32 | if num1[3] in num2:
33 | return True
34 | return False
35 |
36 | prime_numbers = primes(10000)
37 | while prime_numbers[0]<1000:
38 | prime_numbers.remove(prime_numbers[0])
39 |
40 | print len(prime_numbers)
41 | diffs = []
42 | for x in range(0,9000):
43 | diffs.append(0)
44 |
45 | for prime1 in prime_numbers:
46 | for prime2 in prime_numbers:
47 | if prime2==prime1:
48 | break
49 | lower = min(prime1 , prime2)
50 | upper = max(prime1 , prime2)
51 | diff = upper - lower
52 | if perm(upper, lower):
53 | if ((diff+upper) in prime_numbers):
54 | if perm(diff+upper , upper):
55 | print lower, upper , upper + diff
--------------------------------------------------------------------------------
/050/Euler 50 (Charles Dolan's conflicted copy 2013-05-16).py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 | import time
4 |
5 | def isPrime(input , primelist):
6 | for x in primelist:
7 | if input % x==0:
8 | return False
9 | return True
10 | def primes(input):
11 | ## Returns a list of primes up to input
12 | if input==1 or input==2:
13 | return [2,3]
14 | else:
15 | primelist = primes(int(input**.5)+1)
16 | for x in range(primelist[-1]+2,input,2):
17 | primelist.append(x)
18 | for y in primelist[:-1]:
19 | if x%y==0:
20 | primelist.remove(x)
21 | break
22 | return primelist
23 | def eddie( number ):
24 | primelist = primes( number )
25 | def eratosthenes( number ):
26 | prime_list = range(2 , number + 1)
27 | x = prime_list[0]
28 | y = x
29 | while y < number ** .5:
30 | while y < number:
31 | y += x
32 | try:
33 | prime_list.remove( y )
34 | except:
35 | pass
36 | return prime_list
37 |
38 | def atkin( number ):
39 | num_list = range( number + 1 )
40 | primelist = [ False ] * number
41 | print primelist
42 |
43 |
44 |
45 | def test( number ):
46 | start_time = time.time()
47 | eddie( number )
48 | print time.time() - start_time , " ",
49 | start_time = time.time()
50 | eratosthenes( number )
51 | print time.time() - start_time
52 |
53 |
54 | #list = [10,100,1000,10000,100000,200000,1000000]
55 | #for num in list:
56 | # print num ,
57 | # test( num )
58 |
59 | atkin( 100 )
--------------------------------------------------------------------------------
/050/Euler 50.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 | import time
4 | from math import *
5 |
6 | def isPrime(input , primelist):
7 | for x in primelist:
8 | if input % x==0:
9 | return False
10 | return True
11 | def primes(input):
12 | ## Returns a list of primes up to input
13 | if input==1 or input==2:
14 | return [2,3]
15 | else:
16 | primelist = primes(int(input**.5)+1)
17 | print primelist
18 | print primelist[:-1]
19 | for x in range(primelist[-1]+2,input,2):
20 | primelist.append(x)
21 | for y in primelist[:-1]:
22 | if x%y==0:
23 | primelist.remove(x)
24 | break
25 | return primelist
26 | def eddie( number ):
27 | primelist = primes( number )
28 | return primelist
29 | def eratosthenes( number ):
30 | prime_list = range(2 , number + 1)
31 | x = prime_list[0]
32 | y = x
33 | while y < number ** .5:
34 | while y < number:
35 | y += x
36 | try:
37 | prime_list.remove( y )
38 | except:
39 | pass
40 | return prime_list
41 |
42 | def FourxOney( n ):
43 | for x in xrange(1,int(sqrt(n))):
44 | if isinstance((sqrt((n-sqrt(x))/4)),int):
45 | print 1
46 | return True
47 | return False
48 |
49 | def atkin_generator( number ):
50 | num = 1
51 | while num <= number:
52 | maybel = num % 60
53 | if maybel in [ 1,13,17,29,37,41,49,53]:
54 | FourxOney(num)
55 | yield maybel
56 | num += 1
57 |
58 | def atkin( number ):
59 | inf = 0
60 | maybel = atkin_generator( number )
61 | primelist = [2,3,5]
62 |
63 | while inf == 0:
64 | try:
65 | kitty = maybel.next()
66 | except StopIteration:
67 | return primelist
68 |
69 | def test( number ):
70 | start_time = time.time()
71 | eddie( number )
72 | print time.time() - start_time , " ",
73 | start_time = time.time()
74 | eratosthenes( number )
75 | print time.time() - start_time
76 |
77 |
78 | #list = [10,100,1000,10000,100000,200000,1000000]
79 | #for num in list:
80 | # print num ,
81 | # test( num )
82 |
83 | atkin( 10000 )
--------------------------------------------------------------------------------
/054/Euler54.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
3 |
4 | def get_hands( filename ):
5 | return [ [hands.split()[0:5] , hands.split()[5:10]] for hands in open( filename , 'r' ).read().split('\n') ]
6 |
7 | def iterator( hands_list ):
8 | count = 0
9 | for hand in hands_list:
10 | x = get_points( hand[0] )
11 | y = get_points( hand[1] )
12 | if x - y > 0:
13 | print hand
14 | count = count + 1
15 | if x - y == 0:
16 | tie_break = tie(hand[0]) - tie(hand[1])
17 | if tie_break > 0:
18 | count = count + 1
19 | print count
20 |
21 | def tie(hand):
22 | maybel = [ int( get_value( card ) ) for card in hand ]
23 | maybel.sort()
24 | maybel.reverse()
25 | maybel1 = [int(maybel.count(x)) for x in maybel]
26 | if 2 in maybel1:
27 | return maybel[maybel1.index(2)]
28 | max_val = max(maybel1)
29 | return maybel[maybel1.index(max_val)]
30 | def get_points( hand ):
31 | scoring = [ "Maybel" , pair(hand) , t_pair(hand) , three(hand) , straight(hand) ,\
32 | flush(hand) , full(hand) , FOAK(hand) , straight_flush(hand)]
33 | scoring[0] = scoring.count( True ) == 0
34 | return (8 - scoring[::-1].index(True)) * 52
35 | def high_card( hand ):
36 | return max( [ int( get_deck_points( card ) ) for card in hand ])
37 | def pair( hand):
38 | vals = [ int( get_value( card[0] ) ) for card in hand ]
39 | maybel = [ vals.count( value ) for value in vals ]
40 | return maybel.count(2) == 2
41 | def t_pair( hand):
42 | suits = [ int( get_value( card[0] ) ) for card in hand ]
43 | maybel = [ suits.count( value ) for value in suits ]
44 | return maybel.count(2) == 4 and maybel.count(1) == 1
45 | def three( hand):
46 | suits = [ int( get_value( card[0] ) ) for card in hand ]
47 | maybel = [ suits.count( value ) for value in suits ]
48 | return maybel.count( 3 ) == 3
49 | def straight( hand ):
50 | suits = [ int( get_value( card[0] ) ) for card in hand ]
51 | suits.sort()
52 | if suits[4] - suits[0] == 4 and not pair(hand) and not three(hand) and not t_pair(hand ):
53 | return True
54 | return False
55 | def flush( hand ):
56 | suits = [ int( get_suit( card ) ) for card in hand ]
57 | suits.sort()
58 | if suits[4] - suits[0] == 0:
59 | return True
60 | return False
61 | def full( hand ):
62 | x = three( hand ) and pair( hand )
63 | return x
64 | def FOAK( hand ):
65 | suits = [ card[0] for card in hand ]
66 | if suits.count( suits[0] ) == 4 or suits.count( suits[1] ) ==4:
67 | return True
68 | return False
69 | def straight_flush( hand ):
70 | if flush( hand ) & straight( hand ):
71 | return True
72 | return False
73 |
74 | def get_deck_points ( card ):
75 | return get_suit( card ) * 13 + get_value( card )
76 | def get_suit( card ):
77 | return "CDHS".index( card[1] )
78 | def get_value( card ):
79 | return "23456789TJQKA".index( card[0] )
80 |
81 | def main():
82 | hands = get_hands( 'poker.txt' )
83 | iterator( hands )
84 |
85 | main()
--------------------------------------------------------------------------------
/054/poker.txt:
--------------------------------------------------------------------------------
1 | 8C TS KC 9H 4S 7D 2S 5D 3S AC
2 | 5C AD 5D AC 9C 7C 5H 8D TD KS
3 | 3H 7H 6S KC JS QH TD JC 2D 8S
4 | TH 8H 5C QS TC 9H 4D JC KS JS
5 | 7C 5H KC QH JD AS KH 4C AD 4S
6 | 5H KS 9C 7D 9H 8D 3S 5D 5C AH
7 | 6H 4H 5C 3H 2H 3S QH 5S 6S AS
8 | TD 8C 4H 7C TC KC 4C 3H 7S KS
9 | 7C 9C 6D KD 3H 4C QS QC AC KH
10 | JC 6S 5H 2H 2D KD 9D 7C AS JS
11 | AD QH TH 9D 8H TS 6D 3S AS AC
12 | 2H 4S 5C 5S TC KC JD 6C TS 3C
13 | QD AS 6H JS 2C 3D 9H KC 4H 8S
14 | KD 8S 9S 7C 2S 3S 6D 6S 4H KC
15 | 3C 8C 2D 7D 4D 9S 4S QH 4H JD
16 | 8C KC 7S TC 2D TS 8H QD AC 5C
17 | 3D KH QD 6C 6S AD AS 8H 2H QS
18 | 6S 8D 4C 8S 6C QH TC 6D 7D 9D
19 | 2S 8D 8C 4C TS 9S 9D 9C AC 3D
20 | 3C QS 2S 4H JH 3D 2D TD 8S 9H
21 | 5H QS 8S 6D 3C 8C JD AS 7H 7D
22 | 6H TD 9D AS JH 6C QC 9S KD JC
23 | AH 8S QS 4D TH AC TS 3C 3D 5C
24 | 5S 4D JS 3D 8H 6C TS 3S AD 8C
25 | 6D 7C 5D 5H 3S 5C JC 2H 5S 3D
26 | 5H 6H 2S KS 3D 5D JD 7H JS 8H
27 | KH 4H AS JS QS QC TC 6D 7C KS
28 | 3D QS TS 2H JS 4D AS 9S JC KD
29 | QD 5H 4D 5D KH 7H 3D JS KD 4H
30 | 2C 9H 6H 5C 9D 6C JC 2D TH 9S
31 | 7D 6D AS QD JH 4D JS 7C QS 5C
32 | 3H KH QD AD 8C 8H 3S TH 9D 5S
33 | AH 9S 4D 9D 8S 4H JS 3C TC 8D
34 | 2C KS 5H QD 3S TS 9H AH AD 8S
35 | 5C 7H 5D KD 9H 4D 3D 2D KS AD
36 | KS KC 9S 6D 2C QH 9D 9H TS TC
37 | 9C 6H 5D QH 4D AD 6D QC JS KH
38 | 9S 3H 9D JD 5C 4D 9H AS TC QH
39 | 2C 6D JC 9C 3C AD 9S KH 9D 7D
40 | KC 9C 7C JC JS KD 3H AS 3C 7D
41 | QD KH QS 2C 3S 8S 8H 9H 9C JC
42 | QH 8D 3C KC 4C 4H 6D AD 9H 9D
43 | 3S KS QS 7H KH 7D 5H 5D JD AD
44 | 2H 2C 6H TH TC 7D 8D 4H 8C AS
45 | 4S 2H AC QC 3S 6D TH 4D 4C KH
46 | 4D TC KS AS 7C 3C 6D 2D 9H 6C
47 | 8C TD 5D QS 2C 7H 4C 9C 3H 9H
48 | 5H JH TS 7S TD 6H AD QD 8H 8S
49 | 5S AD 9C 8C 7C 8D 5H 9D 8S 2S
50 | 4H KH KS 9S 2S KC 5S AD 4S 7D
51 | QS 9C QD 6H JS 5D AC 8D 2S AS
52 | KH AC JC 3S 9D 9S 3C 9C 5S JS
53 | AD 3C 3D KS 3S 5C 9C 8C TS 4S
54 | JH 8D 5D 6H KD QS QD 3D 6C KC
55 | 8S JD 6C 3S 8C TC QC 3C QH JS
56 | KC JC 8H 2S 9H 9C JH 8S 8C 9S
57 | 8S 2H QH 4D QC 9D KC AS TH 3C
58 | 8S 6H TH 7C 2H 6S 3C 3H AS 7S
59 | QH 5S JS 4H 5H TS 8H AH AC JC
60 | 9D 8H 2S 4S TC JC 3C 7H 3H 5C
61 | 3D AD 3C 3S 4C QC AS 5D TH 8C
62 | 6S 9D 4C JS KH AH TS JD 8H AD
63 | 4C 6S 9D 7S AC 4D 3D 3S TC JD
64 | AD 7H 6H 4H JH KC TD TS 7D 6S
65 | 8H JH TC 3S 8D 8C 9S 2C 5C 4D
66 | 2C 9D KC QH TH QS JC 9C 4H TS
67 | QS 3C QD 8H KH 4H 8D TD 8S AC
68 | 7C 3C TH 5S 8H 8C 9C JD TC KD
69 | QC TC JD TS 8C 3H 6H KD 7C TD
70 | JH QS KS 9C 6D 6S AS 9H KH 6H
71 | 2H 4D AH 2D JH 6H TD 5D 4H JD
72 | KD 8C 9S JH QD JS 2C QS 5C 7C
73 | 4S TC 7H 8D 2S 6H 7S 9C 7C KC
74 | 8C 5D 7H 4S TD QC 8S JS 4H KS
75 | AD 8S JH 6D TD KD 7C 6C 2D 7D
76 | JC 6H 6S JS 4H QH 9H AH 4C 3C
77 | 6H 5H AS 7C 7S 3D KH KC 5D 5C
78 | JC 3D TD AS 4D 6D 6S QH JD KS
79 | 8C 7S 8S QH 2S JD 5C 7H AH QD
80 | 8S 3C 6H 6C 2C 8D TD 7D 4C 4D
81 | 5D QH KH 7C 2S 7H JS 6D QC QD
82 | AD 6C 6S 7D TH 6H 2H 8H KH 4H
83 | KS JS KD 5D 2D KH 7D 9C 8C 3D
84 | 9C 6D QD 3C KS 3S 7S AH JD 2D
85 | AH QH AS JC 8S 8H 4C KC TH 7D
86 | JC 5H TD 7C 5D KD 4C AD 8H JS
87 | KC 2H AC AH 7D JH KH 5D 7S 6D
88 | 9S 5S 9C 6H 8S TD JD 9H 6C AC
89 | 7D 8S 6D TS KD 7H AC 5S 7C 5D
90 | AH QC JC 4C TC 8C 2H TS 2C 7D
91 | KD KC 6S 3D 7D 2S 8S 3H 5S 5C
92 | 8S 5D 8H 4C 6H KC 3H 7C 5S KD
93 | JH 8C 3D 3C 6C KC TD 7H 7C 4C
94 | JC KC 6H TS QS TD KS 8H 8C 9S
95 | 6C 5S 9C QH 7D AH KS KC 9S 2C
96 | 4D 4S 8H TD 9C 3S 7D 9D AS TH
97 | 6S 7D 3C 6H 5D KD 2C 5C 9D 9C
98 | 2H KC 3D AD 3H QD QS 8D JC 4S
99 | 8C 3H 9C 7C AD 5D JC 9D JS AS
100 | 5D 9H 5C 7H 6S 6C QC JC QD 9S
101 | JC QS JH 2C 6S 9C QC 3D 4S TC
102 | 4H 5S 8D 3D 4D 2S KC 2H JS 2C
103 | TD 3S TH KD 4D 7H JH JS KS AC
104 | 7S 8C 9S 2D 8S 7D 5C AD 9D AS
105 | 8C 7H 2S 6C TH 3H 4C 3S 8H AC
106 | KD 5H JC 8H JD 2D 4H TD JH 5C
107 | 3D AS QH KS 7H JD 8S 5S 6D 5H
108 | 9S 6S TC QS JC 5C 5D 9C TH 8C
109 | 5H 3S JH 9H 2S 2C 6S 7S AS KS
110 | 8C QD JC QS TC QC 4H AC KH 6C
111 | TC 5H 7D JH 4H 2H 8D JC KS 4D
112 | 5S 9C KH KD 9H 5C TS 3D 7D 2D
113 | 5H AS TC 4D 8C 2C TS 9D 3H 8D
114 | 6H 8D 2D 9H JD 6C 4S 5H 5S 6D
115 | AD 9C JC 7D 6H 9S 6D JS 9H 3C
116 | AD JH TC QS 4C 5D 9S 7C 9C AH
117 | KD 6H 2H TH 8S QD KS 9D 9H AS
118 | 4H 8H 8D 5H 6C AH 5S AS AD 8S
119 | QS 5D 4S 2H TD KS 5H AC 3H JC
120 | 9C 7D QD KD AC 6D 5H QH 6H 5S
121 | KC AH QH 2H 7D QS 3H KS 7S JD
122 | 6C 8S 3H 6D KS QD 5D 5C 8H TC
123 | 9H 4D 4S 6S 9D KH QC 4H 6C JD
124 | TD 2D QH 4S 6H JH KD 3C QD 8C
125 | 4S 6H 7C QD 9D AS AH 6S AD 3C
126 | 2C KC TH 6H 8D AH 5C 6D 8S 5D
127 | TD TS 7C AD JC QD 9H 3C KC 7H
128 | 5D 4D 5S 8H 4H 7D 3H JD KD 2D
129 | JH TD 6H QS 4S KD 5C 8S 7D 8H
130 | AC 3D AS 8C TD 7H KH 5D 6C JD
131 | 9D KS 7C 6D QH TC JD KD AS KC
132 | JH 8S 5S 7S 7D AS 2D 3D AD 2H
133 | 2H 5D AS 3C QD KC 6H 9H 9S 2C
134 | 9D 5D TH 4C JH 3H 8D TC 8H 9H
135 | 6H KD 2C TD 2H 6C 9D 2D JS 8C
136 | KD 7S 3C 7C AS QH TS AD 8C 2S
137 | QS 8H 6C JS 4C 9S QC AD TD TS
138 | 2H 7C TS TC 8C 3C 9H 2D 6D JC
139 | TC 2H 8D JH KS 6D 3H TD TH 8H
140 | 9D TD 9H QC 5D 6C 8H 8C KC TS
141 | 2H 8C 3D AH 4D TH TC 7D 8H KC
142 | TS 5C 2D 8C 6S KH AH 5H 6H KC
143 | 5S 5D AH TC 4C JD 8D 6H 8C 6C
144 | KC QD 3D 8H 2D JC 9H 4H AD 2S
145 | TD 6S 7D JS KD 4H QS 2S 3S 8C
146 | 4C 9H JH TS 3S 4H QC 5S 9S 9C
147 | 2C KD 9H JS 9S 3H JC TS 5D AC
148 | AS 2H 5D AD 5H JC 7S TD JS 4C
149 | 2D 4S 8H 3D 7D 2C AD KD 9C TS
150 | 7H QD JH 5H JS AC 3D TH 4C 8H
151 | 6D KH KC QD 5C AD 7C 2D 4H AC
152 | 3D 9D TC 8S QD 2C JC 4H JD AH
153 | 6C TD 5S TC 8S AH 2C 5D AS AC
154 | TH 7S 3D AS 6C 4C 7H 7D 4H AH
155 | 5C 2H KS 6H 7S 4H 5H 3D 3C 7H
156 | 3C 9S AC 7S QH 2H 3D 6S 3S 3H
157 | 2D 3H AS 2C 6H TC JS 6S 9C 6C
158 | QH KD QD 6D AC 6H KH 2C TS 8C
159 | 8H 7D 3S 9H 5D 3H 4S QC 9S 5H
160 | 2D 9D 7H 6H 3C 8S 5H 4D 3S 4S
161 | KD 9S 4S TC 7S QC 3S 8S 2H 7H
162 | TC 3D 8C 3H 6C 2H 6H KS KD 4D
163 | KC 3D 9S 3H JS 4S 8H 2D 6C 8S
164 | 6H QS 6C TC QD 9H 7D 7C 5H 4D
165 | TD 9D 8D 6S 6C TC 5D TS JS 8H
166 | 4H KC JD 9H TC 2C 6S 5H 8H AS
167 | JS 9C 5C 6S 9D JD 8H KC 4C 6D
168 | 4D 8D 8S 6C 7C 6H 7H 8H 5C KC
169 | TC 3D JC 6D KS 9S 6H 7S 9C 2C
170 | 6C 3S KD 5H TS 7D 9H 9S 6H KH
171 | 3D QD 4C 6H TS AC 3S 5C 2H KD
172 | 4C AS JS 9S 7C TS 7H 9H JC KS
173 | 4H 8C JD 3H 6H AD 9S 4S 5S KS
174 | 4C 2C 7D 3D AS 9C 2S QS KC 6C
175 | 8S 5H 3D 2S AC 9D 6S 3S 4D TD
176 | QD TH 7S TS 3D AC 7H 6C 5D QC
177 | TC QD AD 9C QS 5C 8D KD 3D 3C
178 | 9D 8H AS 3S 7C 8S JD 2D 8D KC
179 | 4C TH AC QH JS 8D 7D 7S 9C KH
180 | 9D 8D 4C JH 2C 2S QD KD TS 4H
181 | 4D 6D 5D 2D JH 3S 8S 3H TC KH
182 | AD 4D 2C QS 8C KD JH JD AH 5C
183 | 5C 6C 5H 2H JH 4H KS 7C TC 3H
184 | 3C 4C QC 5D JH 9C QD KH 8D TC
185 | 3H 9C JS 7H QH AS 7C 9H 5H JC
186 | 2D 5S QD 4S 3C KC 6S 6C 5C 4C
187 | 5D KH 2D TS 8S 9C AS 9S 7C 4C
188 | 7C AH 8C 8D 5S KD QH QS JH 2C
189 | 8C 9D AH 2H AC QC 5S 8H 7H 2C
190 | QD 9H 5S QS QC 9C 5H JC TH 4H
191 | 6C 6S 3H 5H 3S 6H KS 8D AC 7S
192 | AC QH 7H 8C 4S KC 6C 3D 3S TC
193 | 9D 3D JS TH AC 5H 3H 8S 3S TC
194 | QD KH JS KS 9S QC 8D AH 3C AC
195 | 5H 6C KH 3S 9S JH 2D QD AS 8C
196 | 6C 4D 7S 7H 5S JC 6S 9H 4H JH
197 | AH 5S 6H 9S AD 3S TH 2H 9D 8C
198 | 4C 8D 9H 7C QC AD 4S 9C KC 5S
199 | 9D 6H 4D TC 4C JH 2S 5D 3S AS
200 | 2H 6C 7C KH 5C AD QS TH JD 8S
201 | 3S 4S 7S AH AS KC JS 2S AD TH
202 | JS KC 2S 7D 8C 5C 9C TS 5H 9D
203 | 7S 9S 4D TD JH JS KH 6H 5D 2C
204 | JD JS JC TH 2D 3D QD 8C AC 5H
205 | 7S KH 5S 9D 5D TD 4S 6H 3C 2D
206 | 4S 5D AC 8D 4D 7C AD AS AH 9C
207 | 6S TH TS KS 2C QC AH AS 3C 4S
208 | 2H 8C 3S JC 5C 7C 3H 3C KH JH
209 | 7S 3H JC 5S 6H 4C 2S 4D KC 7H
210 | 4D 7C 4H 9S 8S 6S AD TC 6C JC
211 | KH QS 3S TC 4C 8H 8S AC 3C TS
212 | QD QS TH 3C TS 7H 7D AH TD JC
213 | TD JD QC 4D 9S 7S TS AD 7D AC
214 | AH 7H 4S 6D 7C 2H 9D KS JC TD
215 | 7C AH JD 4H 6D QS TS 2H 2C 5C
216 | TC KC 8C 9S 4C JS 3C JC 6S AH
217 | AS 7D QC 3D 5S JC JD 9D TD KH
218 | TH 3C 2S 6H AH AC 5H 5C 7S 8H
219 | QC 2D AC QD 2S 3S JD QS 6S 8H
220 | KC 4H 3C 9D JS 6H 3S 8S AS 8C
221 | 7H KC 7D JD 2H JC QH 5S 3H QS
222 | 9H TD 3S 8H 7S AC 5C 6C AH 7C
223 | 8D 9H AH JD TD QS 7D 3S 9C 8S
224 | AH QH 3C JD KC 4S 5S 5D TD KS
225 | 9H 7H 6S JH TH 4C 7C AD 5C 2D
226 | 7C KD 5S TC 9D 6S 6C 5D 2S TH
227 | KC 9H 8D 5H 7H 4H QC 3D 7C AS
228 | 6S 8S QC TD 4S 5C TH QS QD 2S
229 | 8S 5H TH QC 9H 6S KC 7D 7C 5C
230 | 7H KD AH 4D KH 5C 4S 2D KC QH
231 | 6S 2C TD JC AS 4D 6C 8C 4H 5S
232 | JC TC JD 5S 6S 8D AS 9D AD 3S
233 | 6D 6H 5D 5S TC 3D 7D QS 9D QD
234 | 4S 6C 8S 3S 7S AD KS 2D 7D 7C
235 | KC QH JC AC QD 5D 8D QS 7H 7D
236 | JS AH 8S 5H 3D TD 3H 4S 6C JH
237 | 4S QS 7D AS 9H JS KS 6D TC 5C
238 | 2D 5C 6H TC 4D QH 3D 9H 8S 6C
239 | 6D 7H TC TH 5S JD 5C 9C KS KD
240 | 8D TD QH 6S 4S 6C 8S KC 5C TC
241 | 5S 3D KS AC 4S 7D QD 4C TH 2S
242 | TS 8H 9S 6S 7S QH 3C AH 7H 8C
243 | 4C 8C TS JS QC 3D 7D 5D 7S JH
244 | 8S 7S 9D QC AC 7C 6D 2H JH KC
245 | JS KD 3C 6S 4S 7C AH QC KS 5H
246 | KS 6S 4H JD QS TC 8H KC 6H AS
247 | KH 7C TC 6S TD JC 5C 7D AH 3S
248 | 3H 4C 4H TC TH 6S 7H 6D 9C QH
249 | 7D 5H 4S 8C JS 4D 3D 8S QH KC
250 | 3H 6S AD 7H 3S QC 8S 4S 7S JS
251 | 3S JD KH TH 6H QS 9C 6C 2D QD
252 | 4S QH 4D 5H KC 7D 6D 8D TH 5S
253 | TD AD 6S 7H KD KH 9H 5S KC JC
254 | 3H QC AS TS 4S QD KS 9C 7S KC
255 | TS 6S QC 6C TH TC 9D 5C 5D KD
256 | JS 3S 4H KD 4C QD 6D 9S JC 9D
257 | 8S JS 6D 4H JH 6H 6S 6C KS KH
258 | AC 7D 5D TC 9S KH 6S QD 6H AS
259 | AS 7H 6D QH 8D TH 2S KH 5C 5H
260 | 4C 7C 3D QC TC 4S KH 8C 2D JS
261 | 6H 5D 7S 5H 9C 9H JH 8S TH 7H
262 | AS JS 2S QD KH 8H 4S AC 8D 8S
263 | 3H 4C TD KD 8C JC 5C QS 2D JD
264 | TS 7D 5D 6C 2C QS 2H 3C AH KS
265 | 4S 7C 9C 7D JH 6C 5C 8H 9D QD
266 | 2S TD 7S 6D 9C 9S QS KH QH 5C
267 | JC 6S 9C QH JH 8D 7S JS KH 2H
268 | 8D 5H TH KC 4D 4S 3S 6S 3D QS
269 | 2D JD 4C TD 7C 6D TH 7S JC AH
270 | QS 7S 4C TH 9D TS AD 4D 3H 6H
271 | 2D 3H 7D JD 3D AS 2S 9C QC 8S
272 | 4H 9H 9C 2C 7S JH KD 5C 5D 6H
273 | TC 9H 8H JC 3C 9S 8D KS AD KC
274 | TS 5H JD QS QH QC 8D 5D KH AH
275 | 5D AS 8S 6S 4C AH QC QD TH 7H
276 | 3H 4H 7D 6S 4S 9H AS 8H JS 9D
277 | JD 8C 2C 9D 7D 5H 5S 9S JC KD
278 | KD 9C 4S QD AH 7C AD 9D AC TD
279 | 6S 4H 4S 9C 8D KS TC 9D JH 7C
280 | 5S JC 5H 4S QH AC 2C JS 2S 9S
281 | 8C 5H AS QD AD 5C 7D 8S QC TD
282 | JC 4C 8D 5C KH QS 4D 6H 2H 2C
283 | TH 4S 2D KC 3H QD AC 7H AD 9D
284 | KH QD AS 8H TH KC 8D 7S QH 8C
285 | JC 6C 7D 8C KH AD QS 2H 6S 2D
286 | JC KH 2D 7D JS QC 5H 4C 5D AD
287 | TS 3S AD 4S TD 2D TH 6S 9H JH
288 | 9H 2D QS 2C 4S 3D KH AS AC 9D
289 | KH 6S 8H 4S KD 7D 9D TS QD QC
290 | JH 5H AH KS AS AD JC QC 5S KH
291 | 5D 7D 6D KS KD 3D 7C 4D JD 3S
292 | AC JS 8D 5H 9C 3H 4H 4D TS 2C
293 | 6H KS KH 9D 7C 2S 6S 8S 2H 3D
294 | 6H AC JS 7S 3S TD 8H 3H 4H TH
295 | 9H TC QC KC 5C KS 6H 4H AC 8S
296 | TC 7D QH 4S JC TS 6D 6C AC KH
297 | QH 7D 7C JH QS QD TH 3H 5D KS
298 | 3D 5S 8D JS 4C 2C KS 7H 9C 4H
299 | 5H 8S 4H TD 2C 3S QD QC 3H KC
300 | QC JS KD 9C AD 5S 9D 7D 7H TS
301 | 8C JC KH 7C 7S 6C TS 2C QD TH
302 | 5S 9D TH 3C 7S QH 8S 9C 2H 5H
303 | 5D 9H 6H 2S JS KH 3H 7C 2H 5S
304 | JD 5D 5S 2C TC 2S 6S 6C 3C 8S
305 | 4D KH 8H 4H 2D KS 3H 5C 2S 9H
306 | 3S 2D TD 7H 8S 6H JD KC 9C 8D
307 | 6S QD JH 7C 9H 5H 8S 8H TH TD
308 | QS 7S TD 7D TS JC KD 7C 3C 2C
309 | 3C JD 8S 4H 2D 2S TD AS 4D AC
310 | AH KS 6C 4C 4S 7D 8C 9H 6H AS
311 | 5S 3C 9S 2C QS KD 4D 4S AC 5D
312 | 2D TS 2C JS KH QH 5D 8C AS KC
313 | KD 3H 6C TH 8S 7S KH 6H 9S AC
314 | 6H 7S 6C QS AH 2S 2H 4H 5D 5H
315 | 5H JC QD 2C 2S JD AS QC 6S 7D
316 | 6C TC AS KD 8H 9D 2C 7D JH 9S
317 | 2H 4C 6C AH 8S TD 3H TH 7C TS
318 | KD 4S TS 6C QH 8D 9D 9C AH 7D
319 | 6D JS 5C QD QC 9C 5D 8C 2H KD
320 | 3C QH JH AD 6S AH KC 8S 6D 6H
321 | 3D 7C 4C 7S 5S 3S 6S 5H JC 3C
322 | QH 7C 5H 3C 3S 8C TS 4C KD 9C
323 | QD 3S 7S 5H 7H QH JC 7C 8C KD
324 | 3C KD KH 2S 4C TS AC 6S 2C 7C
325 | 2C KH 3C 4C 6H 4D 5H 5S 7S QD
326 | 4D 7C 8S QD TS 9D KS 6H KD 3C
327 | QS 4D TS 7S 4C 3H QD 8D 9S TC
328 | TS QH AC 6S 3C 9H 9D QS 8S 6H
329 | 3S 7S 5D 4S JS 2D 6C QH 6S TH
330 | 4C 4H AS JS 5D 3D TS 9C AC 8S
331 | 6S 9C 7C 3S 5C QS AD AS 6H 3C
332 | 9S 8C 7H 3H 6S 7C AS 9H JD KH
333 | 3D 3H 7S 4D 6C 7C AC 2H 9C TH
334 | 4H 5S 3H AC TC TH 9C 9H 9S 8D
335 | 8D 9H 5H 4D 6C 2H QD 6S 5D 3S
336 | 4C 5C JD QS 4D 3H TH AC QH 8C
337 | QC 5S 3C 7H AD 4C KS 4H JD 6D
338 | QS AH 3H KS 9H 2S JS JH 5H 2H
339 | 2H 5S TH 6S TS 3S KS 3C 5H JS
340 | 2D 9S 7H 3D KC JH 6D 7D JS TD
341 | AC JS 8H 2C 8C JH JC 2D TH 7S
342 | 5D 9S 8H 2H 3D TC AH JC KD 9C
343 | 9D QD JC 2H 6D KH TS 9S QH TH
344 | 2C 8D 4S JD 5H 3H TH TC 9C KC
345 | AS 3D 9H 7D 4D TH KH 2H 7S 3H
346 | 4H 7S KS 2S JS TS 8S 2H QD 8D
347 | 5S 6H JH KS 8H 2S QC AC 6S 3S
348 | JC AS AD QS 8H 6C KH 4C 4D QD
349 | 2S 3D TS TD 9S KS 6S QS 5C 8D
350 | 3C 6D 4S QC KC JH QD TH KH AD
351 | 9H AH 4D KS 2S 8D JH JC 7C QS
352 | 2D 6C TH 3C 8H QD QH 2S 3S KS
353 | 6H 5D 9S 4C TS TD JS QD 9D JD
354 | 5H 8H KH 8S KS 7C TD AD 4S KD
355 | 2C 7C JC 5S AS 6C 7D 8S 5H 9C
356 | 6S QD 9S TS KH QS 5S QH 3C KC
357 | 7D 3H 3C KD 5C AS JH 7H 6H JD
358 | 9D 5C 9H KC 8H KS 4S AD 4D 2S
359 | 3S JD QD 8D 2S 7C 5S 6S 5H TS
360 | 6D 9S KC TD 3S 6H QD JD 5C 8D
361 | 5H 9D TS KD 8D 6H TD QC 4C 7D
362 | 6D 4S JD 9D AH 9S AS TD 9H QD
363 | 2D 5S 2H 9C 6H 9S TD QC 7D TC
364 | 3S 2H KS TS 2C 9C 8S JS 9D 7D
365 | 3C KC 6D 5D 6C 6H 8S AS 7S QS
366 | JH 9S 2H 8D 4C 8H 9H AD TH KH
367 | QC AS 2S JS 5C 6H KD 3H 7H 2C
368 | QD 8H 2S 8D 3S 6D AH 2C TC 5C
369 | JD JS TS 8S 3H 5D TD KC JC 6H
370 | 6S QS TC 3H 5D AH JC 7C 7D 4H
371 | 7C 5D 8H 9C 2H 9H JH KH 5S 2C
372 | 9C 7H 6S TH 3S QC QD 4C AC JD
373 | 2H 5D 9S 7D KC 3S QS 2D AS KH
374 | 2S 4S 2H 7D 5C TD TH QH 9S 4D
375 | 6D 3S TS 6H 4H KS 9D 8H 5S 2D
376 | 9H KS 4H 3S 5C 5D KH 6H 6S JS
377 | KC AS 8C 4C JC KH QC TH QD AH
378 | 6S KH 9S 2C 5H TC 3C 7H JC 4D
379 | JD 4S 6S 5S 8D 7H 7S 4D 4C 2H
380 | 7H 9H 5D KH 9C 7C TS TC 7S 5H
381 | 4C 8D QC TS 4S 9H 3D AD JS 7C
382 | 8C QS 5C 5D 3H JS AH KC 4S 9D
383 | TS JD 8S QS TH JH KH 2D QD JS
384 | JD QC 5D 6S 9H 3S 2C 8H 9S TS
385 | 2S 4C AD 7H JC 5C 2D 6D 4H 3D
386 | 7S JS 2C 4H 8C AD QD 9C 3S TD
387 | JD TS 4C 6H 9H 7D QD 6D 3C AS
388 | AS 7C 4C 6S 5D 5S 5C JS QC 4S
389 | KD 6S 9S 7C 3C 5S 7D JH QD JS
390 | 4S 7S JH 2C 8S 5D 7H 3D QH AD
391 | TD 6H 2H 8D 4H 2D 7C AD KH 5D
392 | TS 3S 5H 2C QD AH 2S 5C KH TD
393 | KC 4D 8C 5D AS 6C 2H 2S 9H 7C
394 | KD JS QC TS QS KH JH 2C 5D AD
395 | 3S 5H KC 6C 9H 3H 2H AD 7D 7S
396 | 7S JS JH KD 8S 7D 2S 9H 7C 2H
397 | 9H 2D 8D QC 6S AD AS 8H 5H 6C
398 | 2S 7H 6C 6D 7D 8C 5D 9D JC 3C
399 | 7C 9C 7H JD 2H KD 3S KH AD 4S
400 | QH AS 9H 4D JD KS KD TS KH 5H
401 | 4C 8H 5S 3S 3D 7D TD AD 7S KC
402 | JS 8S 5S JC 8H TH 9C 4D 5D KC
403 | 7C 5S 9C QD 2C QH JS 5H 8D KH
404 | TD 2S KS 3D AD KC 7S TC 3C 5D
405 | 4C 2S AD QS 6C 9S QD TH QH 5C
406 | 8C AD QS 2D 2S KC JD KS 6C JC
407 | 8D 4D JS 2H 5D QD 7S 7D QH TS
408 | 6S 7H 3S 8C 8S 9D QS 8H 6C 9S
409 | 4S TC 2S 5C QD 4D QS 6D TH 6S
410 | 3S 5C 9D 6H 8D 4C 7D TC 7C TD
411 | AH 6S AS 7H 5S KD 3H 5H AC 4C
412 | 8D 8S AH KS QS 2C AD 6H 7D 5D
413 | 6H 9H 9S 2H QS 8S 9C 5D 2D KD
414 | TS QC 5S JH 7D 7S TH 9S 9H AC
415 | 7H 3H 6S KC 4D 6D 5C 4S QD TS
416 | TD 2S 7C QD 3H JH 9D 4H 7S 7H
417 | KS 3D 4H 5H TC 2S AS 2D 6D 7D
418 | 8H 3C 7H TD 3H AD KC TH 9C KH
419 | TC 4C 2C 9S 9D 9C 5C 2H JD 3C
420 | 3H AC TS 5D AD 8D 6H QC 6S 8C
421 | 2S TS 3S JD 7H 8S QH 4C 5S 8D
422 | AC 4S 6C 3C KH 3D 7C 2D 8S 2H
423 | 4H 6C 8S TH 2H 4S 8H 9S 3H 7S
424 | 7C 4C 9C 2C 5C AS 5D KD 4D QH
425 | 9H 4H TS AS 7D 8D 5D 9S 8C 2H
426 | QC KD AC AD 2H 7S AS 3S 2D 9S
427 | 2H QC 8H TC 6D QD QS 5D KH 3C
428 | TH JD QS 4C 2S 5S AD 7H 3S AS
429 | 7H JS 3D 6C 3S 6D AS 9S AC QS
430 | 9C TS AS 8C TC 8S 6H 9D 8D 6C
431 | 4D JD 9C KC 7C 6D KS 3S 8C AS
432 | 3H 6S TC 8D TS 3S KC 9S 7C AS
433 | 8C QC 4H 4S 8S 6C 3S TC AH AC
434 | 4D 7D 5C AS 2H 6S TS QC AD TC
435 | QD QC 8S 4S TH 3D AH TS JH 4H
436 | 5C 2D 9S 2C 3H 3C 9D QD QH 7D
437 | KC 9H 6C KD 7S 3C 4D AS TC 2D
438 | 3D JS 4D 9D KS 7D TH QC 3H 3C
439 | 8D 5S 2H 9D 3H 8C 4C 4H 3C TH
440 | JC TH 4S 6S JD 2D 4D 6C 3D 4C
441 | TS 3S 2D 4H AC 2C 6S 2H JH 6H
442 | TD 8S AD TC AH AC JH 9S 6S 7S
443 | 6C KC 4S JD 8D 9H 5S 7H QH AH
444 | KD 8D TS JH 5C 5H 3H AD AS JS
445 | 2D 4H 3D 6C 8C 7S AD 5D 5C 8S
446 | TD 5D 7S 9C 4S 5H 6C 8C 4C 8S
447 | JS QH 9C AS 5C QS JC 3D QC 7C
448 | JC 9C KH JH QS QC 2C TS 3D AD
449 | 5D JH AC 5C 9S TS 4C JD 8C KS
450 | KC AS 2D KH 9H 2C 5S 4D 3D 6H
451 | TH AH 2D 8S JC 3D 8C QH 7S 3S
452 | 8H QD 4H JC AS KH KS 3C 9S 6D
453 | 9S QH 7D 9C 4S AC 7H KH 4D KD
454 | AH AD TH 6D 9C 9S KD KS QH 4H
455 | QD 6H 9C 7C QS 6D 6S 9D 5S JH
456 | AH 8D 5H QD 2H JC KS 4H KH 5S
457 | 5C 2S JS 8D 9C 8C 3D AS KC AH
458 | JD 9S 2H QS 8H 5S 8C TH 5C 4C
459 | QC QS 8C 2S 2C 3S 9C 4C KS KH
460 | 2D 5D 8S AH AD TD 2C JS KS 8C
461 | TC 5S 5H 8H QC 9H 6H JD 4H 9S
462 | 3C JH 4H 9H AH 4S 2H 4C 8D AC
463 | 8S TH 4D 7D 6D QD QS 7S TC 7C
464 | KH 6D 2D JD 5H JS QD JH 4H 4S
465 | 9C 7S JH 4S 3S TS QC 8C TC 4H
466 | QH 9D 4D JH QS 3S 2C 7C 6C 2D
467 | 4H 9S JD 5C 5H AH 9D TS 2D 4C
468 | KS JH TS 5D 2D AH JS 7H AS 8D
469 | JS AH 8C AD KS 5S 8H 2C 6C TH
470 | 2H 5D AD AC KS 3D 8H TS 6H QC
471 | 6D 4H TS 9C 5H JS JH 6S JD 4C
472 | JH QH 4H 2C 6D 3C 5D 4C QS KC
473 | 6H 4H 6C 7H 6S 2S 8S KH QC 8C
474 | 3H 3D 5D KS 4H TD AD 3S 4D TS
475 | 5S 7C 8S 7D 2C KS 7S 6C 8C JS
476 | 5D 2H 3S 7C 5C QD 5H 6D 9C 9H
477 | JS 2S KD 9S 8D TD TS AC 8C 9D
478 | 5H QD 2S AC 8C 9H KS 7C 4S 3C
479 | KH AS 3H 8S 9C JS QS 4S AD 4D
480 | AS 2S TD AD 4D 9H JC 4C 5H QS
481 | 5D 7C 4H TC 2D 6C JS 4S KC 3S
482 | 4C 2C 5D AC 9H 3D JD 8S QS QH
483 | 2C 8S 6H 3C QH 6D TC KD AC AH
484 | QC 6C 3S QS 4S AC 8D 5C AD KH
485 | 5S 4C AC KH AS QC 2C 5C 8D 9C
486 | 8H JD 3C KH 8D 5C 9C QD QH 9D
487 | 7H TS 2C 8C 4S TD JC 9C 5H QH
488 | JS 4S 2C 7C TH 6C AS KS 7S JD
489 | JH 7C 9H 7H TC 5H 3D 6D 5D 4D
490 | 2C QD JH 2H 9D 5S 3D TD AD KS
491 | JD QH 3S 4D TH 7D 6S QS KS 4H
492 | TC KS 5S 8D 8H AD 2S 2D 4C JH
493 | 5S JH TC 3S 2D QS 9D 4C KD 9S
494 | AC KH 3H AS 9D KC 9H QD 6C 6S
495 | 9H 7S 3D 5C 7D KC TD 8H 4H 6S
496 | 3C 7H 8H TC QD 4D 7S 6S QH 6C
497 | 6D AD 4C QD 6C 5D 7D 9D KS TS
498 | JH 2H JD 9S 7S TS KH 8D 5D 8H
499 | 2D 9S 4C 7D 9D 5H QD 6D AC 6S
500 | 7S 6D JC QD JH 4C 6S QS 2H 7D
501 | 8C TD JH KD 2H 5C QS 2C JS 7S
502 | TC 5H 4H JH QD 3S 5S 5D 8S KH
503 | KS KH 7C 2C 5D JH 6S 9C 6D JC
504 | 5H AH JD 9C JS KC 2H 6H 4D 5S
505 | AS 3C TH QC 6H 9C 8S 8C TD 7C
506 | KC 2C QD 9C KH 4D 7S 3C TS 9H
507 | 9C QC 2S TS 8C TD 9S QD 3S 3C
508 | 4D 9D TH JH AH 6S 2S JD QH JS
509 | QD 9H 6C KD 7D 7H 5D 6S 8H AH
510 | 8H 3C 4S 2H 5H QS QH 7S 4H AC
511 | QS 3C 7S 9S 4H 3S AH KS 9D 7C
512 | AD 5S 6S 2H 2D 5H TC 4S 3C 8C
513 | QH TS 6S 4D JS KS JH AS 8S 6D
514 | 2C 8S 2S TD 5H AS TC TS 6C KC
515 | KC TS 8H 2H 3H 7C 4C 5S TH TD
516 | KD AD KH 7H 7S 5D 5H 5S 2D 9C
517 | AD 9S 3D 7S 8C QC 7C 9C KD KS
518 | 3C QC 9S 8C 4D 5C AS QD 6C 2C
519 | 2H KC 8S JD 7S AC 8D 5C 2S 4D
520 | 9D QH 3D 2S TC 3S KS 3C 9H TD
521 | KD 6S AC 2C 7H 5H 3S 6C 6H 8C
522 | QH TC 8S 6S KH TH 4H 5D TS 4D
523 | 8C JS 4H 6H 2C 2H 7D AC QD 3D
524 | QS KC 6S 2D 5S 4H TD 3H JH 4C
525 | 7S 5H 7H 8H KH 6H QS TH KD 7D
526 | 5H AD KD 7C KH 5S TD 6D 3C 6C
527 | 8C 9C 5H JD 7C KC KH 7H 2H 3S
528 | 7S 4H AD 4D 8S QS TH 3D 7H 5S
529 | 8D TC KS KD 9S 6D AD JD 5C 2S
530 | 7H 8H 6C QD 2H 6H 9D TC 9S 7C
531 | 8D 6D 4C 7C 6C 3C TH KH JS JH
532 | 5S 3S 8S JS 9H AS AD 8H 7S KD
533 | JH 7C 2C KC 5H AS AD 9C 9S JS
534 | AD AC 2C 6S QD 7C 3H TH KS KD
535 | 9D JD 4H 8H 4C KH 7S TS 8C KC
536 | 3S 5S 2H 7S 6H 7D KS 5C 6D AD
537 | 5S 8C 9H QS 7H 7S 2H 6C 7D TD
538 | QS 5S TD AC 9D KC 3D TC 2D 4D
539 | TD 2H 7D JD QD 4C 7H 5D KC 3D
540 | 4C 3H 8S KD QH 5S QC 9H TC 5H
541 | 9C QD TH 5H TS 5C 9H AH QH 2C
542 | 4D 6S 3C AC 6C 3D 2C 2H TD TH
543 | AC 9C 5D QC 4D AD 8D 6D 8C KC
544 | AD 3C 4H AC 8D 8H 7S 9S TD JC
545 | 4H 9H QH JS 2D TH TD TC KD KS
546 | 5S 6S 9S 8D TH AS KH 5H 5C 8S
547 | JD 2S 9S 6S 5S 8S 5D 7S 7H 9D
548 | 5D 8C 4C 9D AD TS 2C 7D KD TC
549 | 8S QS 4D KC 5C 8D 4S KH JD KD
550 | AS 5C AD QH 7D 2H 9S 7H 7C TC
551 | 2S 8S JD KH 7S 6C 6D AD 5D QC
552 | 9H 6H 3S 8C 8H AH TC 4H JS TD
553 | 2C TS 4D 7H 2D QC 9C 5D TH 7C
554 | 6C 8H QC 5D TS JH 5C 5H 9H 4S
555 | 2D QC 7H AS JS 8S 2H 4C 4H 8D
556 | JS 6S AC KD 3D 3C 4S 7H TH KC
557 | QH KH 6S QS 5S 4H 3C QD 3S 3H
558 | 7H AS KH 8C 4H 9C 5S 3D 6S TS
559 | 9C 7C 3H 5S QD 2C 3D AD AC 5H
560 | JH TD 2D 4C TS 3H KH AD 3S 7S
561 | AS 4C 5H 4D 6S KD JC 3C 6H 2D
562 | 3H 6S 8C 2D TH 4S AH QH AD 5H
563 | 7C 2S 9H 7H KC 5C 6D 5S 3H JC
564 | 3C TC 9C 4H QD TD JH 6D 9H 5S
565 | 7C 6S 5C 5D 6C 4S 7H 9H 6H AH
566 | AD 2H 7D KC 2C 4C 2S 9S 7H 3S
567 | TH 4C 8S 6S 3S AD KS AS JH TD
568 | 5C TD 4S 4D AD 6S 5D TC 9C 7D
569 | 8H 3S 4D 4S 5S 6H 5C AC 3H 3D
570 | 9H 3C AC 4S QS 8S 9D QH 5H 4D
571 | JC 6C 5H TS AC 9C JD 8C 7C QD
572 | 8S 8H 9C JD 2D QC QH 6H 3C 8D
573 | KS JS 2H 6H 5H QH QS 3H 7C 6D
574 | TC 3H 4S 7H QC 2H 3S 8C JS KH
575 | AH 8H 5S 4C 9H JD 3H 7S JC AC
576 | 3C 2D 4C 5S 6C 4S QS 3S JD 3D
577 | 5H 2D TC AH KS 6D 7H AD 8C 6H
578 | 6C 7S 3C JD 7C 8H KS KH AH 6D
579 | AH 7D 3H 8H 8S 7H QS 5H 9D 2D
580 | JD AC 4H 7S 8S 9S KS AS 9D QH
581 | 7S 2C 8S 5S JH QS JC AH KD 4C
582 | AH 2S 9H 4H 8D TS TD 6H QH JD
583 | 4H JC 3H QS 6D 7S 9C 8S 9D 8D
584 | 5H TD 4S 9S 4C 8C 8D 7H 3H 3D
585 | QS KH 3S 2C 2S 3C 7S TD 4S QD
586 | 7C TD 4D 5S KH AC AS 7H 4C 6C
587 | 2S 5H 6D JD 9H QS 8S 2C 2H TD
588 | 2S TS 6H 9H 7S 4H JC 4C 5D 5S
589 | 2C 5H 7D 4H 3S QH JC JS 6D 8H
590 | 4C QH 7C QD 3S AD TH 8S 5S TS
591 | 9H TC 2S TD JC 7D 3S 3D TH QH
592 | 7D 4C 8S 5C JH 8H 6S 3S KC 3H
593 | JC 3H KH TC QH TH 6H 2C AC 5H
594 | QS 2H 9D 2C AS 6S 6C 2S 8C 8S
595 | 9H 7D QC TH 4H KD QS AC 7S 3C
596 | 4D JH 6S 5S 8H KS 9S QC 3S AS
597 | JD 2D 6S 7S TC 9H KC 3H 7D KD
598 | 2H KH 7C 4D 4S 3H JS QD 7D KC
599 | 4C JC AS 9D 3C JS 6C 8H QD 4D
600 | AH JS 3S 6C 4C 3D JH 6D 9C 9H
601 | 9H 2D 8C 7H 5S KS 6H 9C 2S TC
602 | 6C 8C AD 7H 6H 3D KH AS 5D TH
603 | KS 8C 3S TS 8S 4D 5S 9S 6C 4H
604 | 9H 4S 4H 5C 7D KC 2D 2H 9D JH
605 | 5C JS TC 9D 9H 5H 7S KH JC 6S
606 | 7C 9H 8H 4D JC KH JD 2H TD TC
607 | 8H 6C 2H 2C KH 6H 9D QS QH 5H
608 | AC 7D 2S 3D QD JC 2D 8D JD JH
609 | 2H JC 2D 7H 2C 3C 8D KD TD 4H
610 | 3S 4H 6D 8D TS 3H TD 3D 6H TH
611 | JH JC 3S AC QH 9H 7H 8S QC 2C
612 | 7H TD QS 4S 8S 9C 2S 5D 4D 2H
613 | 3D TS 3H 2S QC 8H 6H KC JC KS
614 | 5D JD 7D TC 8C 6C 9S 3D 8D AC
615 | 8H 6H JH 6C 5D 8D 8S 4H AD 2C
616 | 9D 4H 2D 2C 3S TS AS TC 3C 5D
617 | 4D TH 5H KS QS 6C 4S 2H 3D AD
618 | 5C KC 6H 2C 5S 3C 4D 2D 9H 9S
619 | JD 4C 3H TH QH 9H 5S AH 8S AC
620 | 7D 9S 6S 2H TD 9C 4H 8H QS 4C
621 | 3C 6H 5D 4H 8C 9C KC 6S QD QS
622 | 3S 9H KD TC 2D JS 8C 6S 4H 4S
623 | 2S 4C 8S QS 6H KH 3H TH 8C 5D
624 | 2C KH 5S 3S 7S 7H 6C 9D QD 8D
625 | 8H KS AC 2D KH TS 6C JS KC 7H
626 | 9C KS 5C TD QC AH 6C 5H 9S 7C
627 | 5D 4D 3H 4H 6S 7C 7S AH QD TD
628 | 2H 7D QC 6S TC TS AH 7S 9D 3H
629 | TH 5H QD 9S KS 7S 7C 6H 8C TD
630 | TH 2D 4D QC 5C 7D JD AH 9C 4H
631 | 4H 3H AH 8D 6H QC QH 9H 2H 2C
632 | 2D AD 4C TS 6H 7S TH 4H QS TD
633 | 3C KD 2H 3H QS JD TC QC 5D 8H
634 | KS JC QD TH 9S KD 8D 8C 2D 9C
635 | 3C QD KD 6D 4D 8D AH AD QC 8S
636 | 8H 3S 9D 2S 3H KS 6H 4C 7C KC
637 | TH 9S 5C 3D 7D 6H AC 7S 4D 2C
638 | 5C 3D JD 4D 2D 6D 5H 9H 4C KH
639 | AS 7H TD 6C 2H 3D QD KS 4C 4S
640 | JC 3C AC 7C JD JS 8H 9S QC 5D
641 | JD 6S 5S 2H AS 8C 7D 5H JH 3D
642 | 8D TC 5S 9S 8S 3H JC 5H 7S AS
643 | 5C TD 3D 7D 4H 8D 7H 4D 5D JS
644 | QS 9C KS TD 2S 8S 5C 2H 4H AS
645 | TH 7S 4H 7D 3H JD KD 5D 2S KC
646 | JD 7H 4S 8H 4C JS 6H QH 5S 4H
647 | 2C QS 8C 5S 3H QC 2S 6C QD AD
648 | 8C 3D JD TC 4H 2H AD 5S AC 2S
649 | 5D 2C JS 2D AD 9D 3D 4C 4S JH
650 | 8D 5H 5D 6H 7S 4D KS 9D TD JD
651 | 3D 6D 9C 2S AS 7D 5S 5C 8H JD
652 | 7C 8S 3S 6S 5H JD TC AD 7H 7S
653 | 2S 9D TS 4D AC 8D 6C QD JD 3H
654 | 9S KH 2C 3C AC 3D 5H 6H 8D 5D
655 | KS 3D 2D 6S AS 4C 2S 7C 7H KH
656 | AC 2H 3S JC 5C QH 4D 2D 5H 7S
657 | TS AS JD 8C 6H JC 8S 5S 2C 5D
658 | 7S QH 7H 6C QC 8H 2D 7C JD 2S
659 | 2C QD 2S 2H JC 9C 5D 2D JD JH
660 | 7C 5C 9C 8S 7D 6D 8D 6C 9S JH
661 | 2C AD 6S 5H 3S KS 7S 9D KH 4C
662 | 7H 6C 2C 5C TH 9D 8D 3S QC AH
663 | 5S KC 6H TC 5H 8S TH 6D 3C AH
664 | 9C KD 4H AD TD 9S 4S 7D 6H 5D
665 | 7H 5C 5H 6D AS 4C KD KH 4H 9D
666 | 3C 2S 5C 6C JD QS 2H 9D 7D 3H
667 | AC 2S 6S 7S JS QD 5C QS 6H AD
668 | 5H TH QC 7H TC 3S 7C 6D KC 3D
669 | 4H 3D QC 9S 8H 2C 3S JC KS 5C
670 | 4S 6S 2C 6H 8S 3S 3D 9H 3H JS
671 | 4S 8C 4D 2D 8H 9H 7D 9D AH TS
672 | 9S 2C 9H 4C 8D AS 7D 3D 6D 5S
673 | 6S 4C 7H 8C 3H 5H JC AH 9D 9C
674 | 2S 7C 5S JD 8C 3S 3D 4D 7D 6S
675 | 3C KC 4S 5D 7D 3D JD 7H 3H 4H
676 | 9C 9H 4H 4D TH 6D QD 8S 9S 7S
677 | 2H AC 8S 4S AD 8C 2C AH 7D TC
678 | TS 9H 3C AD KS TC 3D 8C 8H JD
679 | QC 8D 2C 3C 7D 7C JD 9H 9C 6C
680 | AH 6S JS JH 5D AS QC 2C JD TD
681 | 9H KD 2H 5D 2D 3S 7D TC AH TS
682 | TD 8H AS 5D AH QC AC 6S TC 5H
683 | KS 4S 7H 4D 8D 9C TC 2H 6H 3H
684 | 3H KD 4S QD QH 3D 8H 8C TD 7S
685 | 8S JD TC AH JS QS 2D KH KS 4D
686 | 3C AD JC KD JS KH 4S TH 9H 2C
687 | QC 5S JS 9S KS AS 7C QD 2S JD
688 | KC 5S QS 3S 2D AC 5D 9H 8H KS
689 | 6H 9C TC AD 2C 6D 5S JD 6C 7C
690 | QS KH TD QD 2C 3H 8S 2S QC AH
691 | 9D 9H JH TC QH 3C 2S JS 5C 7H
692 | 6C 3S 3D 2S 4S QD 2D TH 5D 2C
693 | 2D 6H 6D 2S JC QH AS 7H 4H KH
694 | 5H 6S KS AD TC TS 7C AC 4S 4H
695 | AD 3C 4H QS 8C 9D KS 2H 2D 4D
696 | 4S 9D 6C 6D 9C AC 8D 3H 7H KD
697 | JC AH 6C TS JD 6D AD 3S 5D QD
698 | JC JH JD 3S 7S 8S JS QC 3H 4S
699 | JD TH 5C 2C AD JS 7H 9S 2H 7S
700 | 8D 3S JH 4D QC AS JD 2C KC 6H
701 | 2C AC 5H KD 5S 7H QD JH AH 2D
702 | JC QH 8D 8S TC 5H 5C AH 8C 6C
703 | 3H JS 8S QD JH 3C 4H 6D 5C 3S
704 | 6D 4S 4C AH 5H 5S 3H JD 7C 8D
705 | 8H AH 2H 3H JS 3C 7D QC 4H KD
706 | 6S 2H KD 5H 8H 2D 3C 8S 7S QD
707 | 2S 7S KC QC AH TC QS 6D 4C 8D
708 | 5S 9H 2C 3S QD 7S 6C 2H 7C 9D
709 | 3C 6C 5C 5S JD JC KS 3S 5D TS
710 | 7C KS 6S 5S 2S 2D TC 2H 5H QS
711 | AS 7H 6S TS 5H 9S 9D 3C KD 2H
712 | 4S JS QS 3S 4H 7C 2S AC 6S 9D
713 | 8C JH 2H 5H 7C 5D QH QS KH QC
714 | 3S TD 3H 7C KC 8D 5H 8S KH 8C
715 | 4H KH JD TS 3C 7H AS QC JS 5S
716 | AH 9D 2C 8D 4D 2D 6H 6C KC 6S
717 | 2S 6H 9D 3S 7H 4D KH 8H KD 3D
718 | 9C TC AC JH KH 4D JD 5H TD 3S
719 | 7S 4H 9D AS 4C 7D QS 9S 2S KH
720 | 3S 8D 8S KS 8C JC 5C KH 2H 5D
721 | 8S QH 2C 4D KC JS QC 9D AC 6H
722 | 8S 8C 7C JS JD 6S 4C 9C AC 4S
723 | QH 5D 2C 7D JC 8S 2D JS JH 4C
724 | JS 4C 7S TS JH KC KH 5H QD 4S
725 | QD 8C 8D 2D 6S TD 9D AC QH 5S
726 | QH QC JS 3D 3C 5C 4H KH 8S 7H
727 | 7C 2C 5S JC 8S 3H QC 5D 2H KC
728 | 5S 8D KD 6H 4H QD QH 6D AH 3D
729 | 7S KS 6C 2S 4D AC QS 5H TS JD
730 | 7C 2D TC 5D QS AC JS QC 6C KC
731 | 2C KS 4D 3H TS 8S AD 4H 7S 9S
732 | QD 9H QH 5H 4H 4D KH 3S JC AD
733 | 4D AC KC 8D 6D 4C 2D KH 2C JD
734 | 2C 9H 2D AH 3H 6D 9C 7D TC KS
735 | 8C 3H KD 7C 5C 2S 4S 5H AS AH
736 | TH JD 4H KD 3H TC 5C 3S AC KH
737 | 6D 7H AH 7S QC 6H 2D TD JD AS
738 | JH 5D 7H TC 9S 7D JC AS 5S KH
739 | 2H 8C AD TH 6H QD KD 9H 6S 6C
740 | QH KC 9D 4D 3S JS JH 4H 2C 9H
741 | TC 7H KH 4H JC 7D 9S 3H QS 7S
742 | AD 7D JH 6C 7H 4H 3S 3H 4D QH
743 | JD 2H 5C AS 6C QC 4D 3C TC JH
744 | AC JD 3H 6H 4C JC AD 7D 7H 9H
745 | 4H TC TS 2C 8C 6S KS 2H JD 9S
746 | 4C 3H QS QC 9S 9H 6D KC 9D 9C
747 | 5C AD 8C 2C QH TH QD JC 8D 8H
748 | QC 2C 2S QD 9C 4D 3S 8D JH QS
749 | 9D 3S 2C 7S 7C JC TD 3C TC 9H
750 | 3C TS 8H 5C 4C 2C 6S 8D 7C 4H
751 | KS 7H 2H TC 4H 2C 3S AS AH QS
752 | 8C 2D 2H 2C 4S 4C 6S 7D 5S 3S
753 | TH QC 5D TD 3C QS KD KC KS AS
754 | 4D AH KD 9H KS 5C 4C 6H JC 7S
755 | KC 4H 5C QS TC 2H JC 9S AH QH
756 | 4S 9H 3H 5H 3C QD 2H QC JH 8H
757 | 5D AS 7H 2C 3D JH 6H 4C 6S 7D
758 | 9C JD 9H AH JS 8S QH 3H KS 8H
759 | 3S AC QC TS 4D AD 3D AH 8S 9H
760 | 7H 3H QS 9C 9S 5H JH JS AH AC
761 | 8D 3C JD 2H AC 9C 7H 5S 4D 8H
762 | 7C JH 9H 6C JS 9S 7H 8C 9D 4H
763 | 2D AS 9S 6H 4D JS JH 9H AD QD
764 | 6H 7S JH KH AH 7H TD 5S 6S 2C
765 | 8H JH 6S 5H 5S 9D TC 4C QC 9S
766 | 7D 2C KD 3H 5H AS QD 7H JS 4D
767 | TS QH 6C 8H TH 5H 3C 3H 9C 9D
768 | AD KH JS 5D 3H AS AC 9S 5C KC
769 | 2C KH 8C JC QS 6D AH 2D KC TC
770 | 9D 3H 2S 7C 4D 6D KH KS 8D 7D
771 | 9H 2S TC JH AC QC 3H 5S 3S 8H
772 | 3S AS KD 8H 4C 3H 7C JH QH TS
773 | 7S 6D 7H 9D JH 4C 3D 3S 6C AS
774 | 4S 2H 2C 4C 8S 5H KC 8C QC QD
775 | 3H 3S 6C QS QC 2D 6S 5D 2C 9D
776 | 2H 8D JH 2S 3H 2D 6C 5C 7S AD
777 | 9H JS 5D QH 8S TS 2H 7S 6S AD
778 | 6D QC 9S 7H 5H 5C 7D KC JD 4H
779 | QC 5S 9H 9C 4D 6S KS 2S 4C 7C
780 | 9H 7C 4H 8D 3S 6H 5C 8H JS 7S
781 | 2D 6H JS TD 4H 4D JC TH 5H KC
782 | AC 7C 8D TH 3H 9S 2D 4C KC 4D
783 | KD QS 9C 7S 3D KS AD TS 4C 4H
784 | QH 9C 8H 2S 7D KS 7H 5D KD 4C
785 | 9C 2S 2H JC 6S 6C TC QC JH 5C
786 | 7S AC 8H KC 8S 6H QS JC 3D 6S
787 | JS 2D JH 8C 4S 6H 8H 6D 5D AD
788 | 6H 7D 2S 4H 9H 7C AS AC 8H 5S
789 | 3C JS 4S 6D 5H 2S QH 6S 9C 2C
790 | 3D 5S 6S 9S 4C QS 8D QD 8S TC
791 | 9C 3D AH 9H 5S 2C 7D AD JC 3S
792 | 7H TC AS 3C 6S 6D 7S KH KC 9H
793 | 3S TC 8H 6S 5H JH 8C 7D AC 2S
794 | QD 9D 9C 3S JC 8C KS 8H 5D 4D
795 | JS AH JD 6D 9D 8C 9H 9S 8H 3H
796 | 2D 6S 4C 4D 8S AD 4S TC AH 9H
797 | TS AC QC TH KC 6D 4H 7S 8C 2H
798 | 3C QD JS 9D 5S JC AH 2H TS 9H
799 | 3H 4D QH 5D 9C 5H 7D 4S JC 3S
800 | 8S TH 3H 7C 2H JD JS TS AC 8D
801 | 9C 2H TD KC JD 2S 8C 5S AD 2C
802 | 3D KD 7C 5H 4D QH QD TC 6H 7D
803 | 7H 2C KC 5S KD 6H AH QC 7S QH
804 | 6H 5C AC 5H 2C 9C 2D 7C TD 2S
805 | 4D 9D AH 3D 7C JD 4H 8C 4C KS
806 | TH 3C JS QH 8H 4C AS 3D QS QC
807 | 4D 7S 5H JH 6D 7D 6H JS KH 3C
808 | QD 8S 7D 2H 2C 7C JC 2S 5H 8C
809 | QH 8S 9D TC 2H AD 7C 8D QD 6S
810 | 3S 7C AD 9H 2H 9S JD TS 4C 2D
811 | 3S AS 4H QC 2C 8H 8S 7S TD TC
812 | JH TH TD 3S 4D 4H 5S 5D QS 2C
813 | 8C QD QH TC 6D 4S 9S 9D 4H QC
814 | 8C JS 9D 6H JD 3H AD 6S TD QC
815 | KC 8S 3D 7C TD 7D 8D 9H 4S 3S
816 | 6C 4S 3D 9D KD TC KC KS AC 5S
817 | 7C 6S QH 3D JS KD 6H 6D 2D 8C
818 | JD 2S 5S 4H 8S AC 2D 6S TS 5C
819 | 5H 8C 5S 3C 4S 3D 7C 8D AS 3H
820 | AS TS 7C 3H AD 7D JC QS 6C 6H
821 | 3S 9S 4C AC QH 5H 5D 9H TS 4H
822 | 6C 5C 7H 7S TD AD JD 5S 2H 2S
823 | 7D 6C KC 3S JD 8D 8S TS QS KH
824 | 8S QS 8D 6C TH AC AH 2C 8H 9S
825 | 7H TD KH QH 8S 3D 4D AH JD AS
826 | TS 3D 2H JC 2S JH KH 6C QC JS
827 | KC TH 2D 6H 7S 2S TC 8C 9D QS
828 | 3C 9D 6S KH 8H 6D 5D TH 2C 2H
829 | 6H TC 7D AD 4D 8S TS 9H TD 7S
830 | JS 6D JD JC 2H AC 6C 3D KH 8D
831 | KH JD 9S 5D 4H 4C 3H 7S QS 5C
832 | 4H JD 5D 3S 3C 4D KH QH QS 7S
833 | JD TS 8S QD AH 4C 6H 3S 5S 2C
834 | QS 3D JD AS 8D TH 7C 6S QC KS
835 | 7S 2H 8C QC 7H AC 6D 2D TH KH
836 | 5S 6C 7H KH 7D AH 8C 5C 7S 3D
837 | 3C KD AD 7D 6C 4D KS 2D 8C 4S
838 | 7C 8D 5S 2D 2S AH AD 2C 9D TD
839 | 3C AD 4S KS JH 7C 5C 8C 9C TH
840 | AS TD 4D 7C JD 8C QH 3C 5H 9S
841 | 3H 9C 8S 9S 6S QD KS AH 5H JH
842 | QC 9C 5S 4H 2H TD 7D AS 8C 9D
843 | 8C 2C 9D KD TC 7S 3D KH QC 3C
844 | 4D AS 4C QS 5S 9D 6S JD QH KS
845 | 6D AH 6C 4C 5H TS 9H 7D 3D 5S
846 | QS JD 7C 8D 9C AC 3S 6S 6C KH
847 | 8H JH 5D 9S 6D AS 6S 3S QC 7H
848 | QD AD 5C JH 2H AH 4H AS KC 2C
849 | JH 9C 2C 6H 2D JS 5D 9H KC 6D
850 | 7D 9D KD TH 3H AS 6S QC 6H AD
851 | JD 4H 7D KC 3H JS 3C TH 3D QS
852 | 4C 3H 8C QD 5H 6H AS 8H AD JD
853 | TH 8S KD 5D QC 7D JS 5S 5H TS
854 | 7D KC 9D QS 3H 3C 6D TS 7S AH
855 | 7C 4H 7H AH QC AC 4D 5D 6D TH
856 | 3C 4H 2S KD 8H 5H JH TC 6C JD
857 | 4S 8C 3D 4H JS TD 7S JH QS KD
858 | 7C QC KD 4D 7H 6S AD TD TC KH
859 | 5H 9H KC 3H 4D 3D AD 6S QD 6H
860 | TH 7C 6H TS QH 5S 2C KC TD 6S
861 | 7C 4D 5S JD JH 7D AC KD KH 4H
862 | 7D 6C 8D 8H 5C JH 8S QD TH JD
863 | 8D 7D 6C 7C 9D KD AS 5C QH JH
864 | 9S 2C 8C 3C 4C KS JH 2D 8D 4H
865 | 7S 6C JH KH 8H 3H 9D 2D AH 6D
866 | 4D TC 9C 8D 7H TD KS TH KD 3C
867 | JD 9H 8D QD AS KD 9D 2C 2S 9C
868 | 8D 3H 5C 7H KS 5H QH 2D 8C 9H
869 | 2D TH 6D QD 6C KC 3H 3S AD 4C
870 | 4H 3H JS 9D 3C TC 5H QH QC JC
871 | 3D 5C 6H 3S 3C JC 5S 7S 2S QH
872 | AC 5C 8C 4D 5D 4H 2S QD 3C 3H
873 | 2C TD AH 9C KD JS 6S QD 4C QC
874 | QS 8C 3S 4H TC JS 3H 7C JC AD
875 | 5H 4D 9C KS JC TD 9S TS 8S 9H
876 | QD TS 7D AS AC 2C TD 6H 8H AH
877 | 6S AD 8C 4S 9H 8D 9D KH 8S 3C
878 | QS 4D 2D 7S KH JS JC AD 4C 3C
879 | QS 9S 7H KC TD TH 5H JS AC JH
880 | 6D AC 2S QS 7C AS KS 6S KH 5S
881 | 6D 8H KH 3C QS 2H 5C 9C 9D 6C
882 | JS 2C 4C 6H 7D JC AC QD TD 3H
883 | 4H QC 8H JD 4C KD KS 5C KC 7S
884 | 6D 2D 3H 2S QD 5S 7H AS TH 6S
885 | AS 6D 8D 2C 8S TD 8H QD JC AH
886 | 9C 9H 2D TD QH 2H 5C TC 3D 8H
887 | KC 8S 3D KH 2S TS TC 6S 4D JH
888 | 9H 9D QS AC KC 6H 5D 4D 8D AH
889 | 9S 5C QS 4H 7C 7D 2H 8S AD JS
890 | 3D AC 9S AS 2C 2D 2H 3H JC KH
891 | 7H QH KH JD TC KS 5S 8H 4C 8D
892 | 2H 7H 3S 2S 5H QS 3C AS 9H KD
893 | AD 3D JD 6H 5S 9C 6D AC 9S 3S
894 | 3D 5D 9C 2D AC 4S 2S AD 6C 6S
895 | QC 4C 2D 3H 6S KC QH QD 2H JH
896 | QC 3C 8S 4D 9S 2H 5C 8H QS QD
897 | 6D KD 6S 7H 3S KH 2H 5C JC 6C
898 | 3S 9S TC 6S 8H 2D AD 7S 8S TS
899 | 3C 6H 9C 3H 5C JC 8H QH TD QD
900 | 3C JS QD 5D TD 2C KH 9H TH AS
901 | 9S TC JD 3D 5C 5H AD QH 9H KC
902 | TC 7H 4H 8H 3H TD 6S AC 7C 2S
903 | QS 9D 5D 3C JC KS 4D 6C JH 2S
904 | 9S 6S 3C 7H TS 4C KD 6D 3D 9C
905 | 2D 9H AH AC 7H 2S JH 3S 7C QC
906 | QD 9H 3C 2H AC AS 8S KD 8C KH
907 | 2D 7S TD TH 6D JD 8D 4D 2H 5S
908 | 8S QH KD JD QS JH 4D KC 5H 3S
909 | 3C KH QC 6D 8H 3S AH 7D TD 2D
910 | 5S 9H QH 4S 6S 6C 6D TS TH 7S
911 | 6C 4C 6D QS JS 9C TS 3H 8D 8S
912 | JS 5C 7S AS 2C AH 2H AD 5S TC
913 | KD 6C 9C 9D TS 2S JC 4H 2C QD
914 | QS 9H TC 3H KC KS 4H 3C AD TH
915 | KH 9C 2H KD 9D TC 7S KC JH 2D
916 | 7C 3S KC AS 8C 5D 9C 9S QH 3H
917 | 2D 8C TD 4C 2H QC 5D TC 2C 7D
918 | KS 4D 6C QH TD KH 5D 7C AD 8D
919 | 2S 9S 8S 4C 8C 3D 6H QD 7C 7H
920 | 6C 8S QH 5H TS 5C 3C 4S 2S 2H
921 | 8S 6S 2H JC 3S 3H 9D 8C 2S 7H
922 | QC 2C 8H 9C AC JD 4C 4H 6S 3S
923 | 3H 3S 7D 4C 9S 5H 8H JC 3D TC
924 | QH 2S 2D 9S KD QD 9H AD 6D 9C
925 | 8D 2D KS 9S JC 4C JD KC 4S TH
926 | KH TS 6D 4D 5C KD 5H AS 9H AD
927 | QD JS 7C 6D 5D 5C TH 5H QH QS
928 | 9D QH KH 5H JH 4C 4D TC TH 6C
929 | KH AS TS 9D KD 9C 7S 4D 8H 5S
930 | KH AS 2S 7D 9D 4C TS TH AH 7C
931 | KS 4D AC 8S 9S 8D TH QH 9D 5C
932 | 5D 5C 8C QS TC 4C 3D 3S 2C 8D
933 | 9D KS 2D 3C KC 4S 8C KH 6C JC
934 | 8H AH 6H 7D 7S QD 3C 4C 6C KC
935 | 3H 2C QH 8H AS 7D 4C 8C 4H KC
936 | QD 5S 4H 2C TD AH JH QH 4C 8S
937 | 3H QS 5S JS 8H 2S 9H 9C 3S 2C
938 | 6H TS 7S JC QD AC TD KC 5S 3H
939 | QH AS QS 7D JC KC 2C 4C 5C 5S
940 | QH 3D AS JS 4H 8D 7H JC 2S 9C
941 | 5D 4D 2S 4S 9D 9C 2D QS 8H 7H
942 | 6D 7H 3H JS TS AC 2D JH 7C 8S
943 | JH 5H KC 3C TC 5S 9H 4C 8H 9D
944 | 8S KC 5H 9H AD KS 9D KH 8D AH
945 | JC 2H 9H KS 6S 3H QC 5H AH 9C
946 | 5C KH 5S AD 6C JC 9H QC 9C TD
947 | 5S 5D JC QH 2D KS 8H QS 2H TS
948 | JH 5H 5S AH 7H 3C 8S AS TD KH
949 | 6H 3D JD 2C 4C KC 7S AH 6C JH
950 | 4C KS 9D AD 7S KC 7D 8H 3S 9C
951 | 7H 5C 5H 3C 8H QC 3D KH 6D JC
952 | 2D 4H 5D 7D QC AD AH 9H QH 8H
953 | KD 8C JS 9D 3S 3C 2H 5D 6D 2S
954 | 8S 6S TS 3C 6H 8D 5S 3H TD 6C
955 | KS 3D JH 9C 7C 9S QS 5S 4H 6H
956 | 7S 6S TH 4S KC KD 3S JC JH KS
957 | 7C 3C 2S 6D QH 2C 7S 5H 8H AH
958 | KC 8D QD 6D KH 5C 7H 9D 3D 9C
959 | 6H 2D 8S JS 9S 2S 6D KC 7C TC
960 | KD 9C JH 7H KC 8S 2S 7S 3D 6H
961 | 4H 9H 2D 4C 8H 7H 5S 8S 2H 8D
962 | AD 7C 3C 7S 5S 4D 9H 3D JC KH
963 | 5D AS 7D 6D 9C JC 4C QH QS KH
964 | KD JD 7D 3D QS QC 8S 6D JS QD
965 | 6S 8C 5S QH TH 9H AS AC 2C JD
966 | QC KS QH 7S 3C 4C 5C KC 5D AH
967 | 6C 4H 9D AH 2C 3H KD 3D TS 5C
968 | TD 8S QS AS JS 3H KD AC 4H KS
969 | 7D 5D TS 9H 4H 4C 9C 2H 8C QC
970 | 2C 7D 9H 4D KS 4C QH AD KD JS
971 | QD AD AH KH 9D JS 9H JC KD JD
972 | 8S 3C 4S TS 7S 4D 5C 2S 6H 7C
973 | JS 7S 5C KD 6D QH 8S TD 2H 6S
974 | QH 6C TC 6H TD 4C 9D 2H QC 8H
975 | 3D TS 4D 2H 6H 6S 2C 7H 8S 6C
976 | 9H 9D JD JH 3S AH 2C 6S 3H 8S
977 | 2C QS 8C 5S 3H 2S 7D 3C AD 4S
978 | 5C QC QH AS TS 4S 6S 4C 5H JS
979 | JH 5C TD 4C 6H JS KD KH QS 4H
980 | TC KH JC 4D 9H 9D 8D KC 3C 8H
981 | 2H TC 8S AD 9S 4H TS 7H 2C 5C
982 | 4H 2S 6C 5S KS AH 9C 7C 8H KD
983 | TS QH TD QS 3C JH AH 2C 8D 7D
984 | 5D KC 3H 5S AC 4S 7H QS 4C 2H
985 | 3D 7D QC KH JH 6D 6C TD TH KD
986 | 5S 8D TH 6C 9D 7D KH 8C 9S 6D
987 | JD QS 7S QC 2S QH JC 4S KS 8D
988 | 7S 5S 9S JD KD 9C JC AD 2D 7C
989 | 4S 5H AH JH 9C 5D TD 7C 2D 6S
990 | KC 6C 7H 6S 9C QD 5S 4H KS TD
991 | 6S 8D KS 2D TH TD 9H JD TS 3S
992 | KH JS 4H 5D 9D TC TD QC JD TS
993 | QS QD AC AD 4C 6S 2D AS 3H KC
994 | 4C 7C 3C TD QS 9C KC AS 8D AD
995 | KC 7H QC 6D 8H 6S 5S AH 7S 8C
996 | 3S AD 9H JC 6D JD AS KH 6S JH
997 | AD 3D TS KS 7H JH 2D JS QD AC
998 | 9C JD 7C 6D TC 6H 6C JC 3D 3S
999 | QC KC 3S JC KD 2C 8D AH QS TS
1000 | AS KD 3D JD 8H 7C 8C 5C QD 6C
--------------------------------------------------------------------------------
/059/Euler 59.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
3 | import string
4 |
5 | def input(filename):
6 | return [int(x) for x in open(filename,'r').read().split(',')]
7 | def XOR(b,a):
8 | return int("".join(map(lambda x,y:str(int(((x)==1)==(int(y)==0))), [int(x) for x in str(bin(a))[2:]] , [int(y) for y in (len(str(bin(a)[2:]))-len(str(bin(b)[2:])))*'0' + str(bin(b))[2:]])),2)
9 | def text(nums):
10 | return "".join([unichr(x) for x in nums])
11 | def engrish(list):
12 | sum = 0
13 | for num in list:
14 | if (num<123 and num >96) or (num>64 and num<91) or (num==32):
15 | sum+=1
16 | return sum / float(len(list))
17 | def split(list,int):
18 | return [[x for x in list[a::int]] for a in range(0,int)]
19 | def get_letter(list):
20 | returnlist = []
21 | for letter in string.lowercase:
22 | maybel = [XOR(x,ord(letter)) for x in list]
23 | returnlist.append(engrish(maybel))
24 | return returnlist
25 |
26 | def decode( code_list, cipher_list):
27 | result = []
28 | x = 0
29 | while x cDist + newObj.dist) ){
98 | updateDistance( c( newObj.tup ) , cDist, updateDistance)
99 | }
100 | })
101 | };
102 |
103 | q.addToNetwork = function( i, j ){
104 | // function to add a node to the network
105 | // Getting the id and the object
106 | var id = c([ i, j ]);
107 | var obj = storage[ id ];
108 |
109 | // Pushing to network array and triggering network bool
110 | inNetwork.push(id);
111 | obj.inNetwork = true;
112 |
113 | // this if statement only needs to be there because the first node added
114 | // to the network won't be int the proximity.
115 | if ( inProximity.indexOf( id ) !== -1 ){
116 | inProximity.splice( inProximity.indexOf( id ), 1 );
117 | }
118 | obj.inProximity = false;
119 |
120 | if ( !Number.isFinite( obj.cDist ) ){
121 | // check to see whether this is the start of a path
122 | obj.cDist = obj.dist;
123 | }
124 | var cDist = obj.cDist;
125 |
126 | if ( id === tarId ){
127 | console.log('ANSWER is' , obj.cDist);
128 | unsolved = false;
129 | }
130 |
131 |
132 | var potentialKeys = [
133 | [ i + 1, j ], // right
134 | [ i - 1, j ], // left
135 | [ i, j + 1 ], // up
136 | [ i, j - 1 ] // down
137 | ];
138 |
139 | var updateDistance = this.updateDistance;
140 |
141 | potentialKeys.forEach( function( newKey ){
142 | var newId = c( newKey );
143 |
144 | var obj = storage[ newId ];
145 | if ( obj ){
146 | // if this object exists it is in bounds of matrix
147 | if ( obj.inNetwork || obj.inProximity ){
148 | // if it is in the network or the proximity already
149 | if ( obj.cDist > obj.dist + cDist ){
150 | // a shorter parto to this node has been found
151 | updateDistance( newId, cDist, updateDistance);
152 | }
153 | } else{
154 | // this index needs to be put into the proximity
155 | obj.inProximity = true;
156 | inProximity.push( newId );
157 | obj.cDist = cDist + obj.dist;
158 | }
159 | }
160 | })
161 | };
162 |
163 | q.print = function(){
164 | var retString = '';
165 | for (var i = 0; i < 80; i++){
166 | for (var j = 0; j < 80; j++){
167 | var id = c( [i,j] )
168 | retString += storage[id].dist + ','
169 | }
170 | retString += '\n'
171 | }
172 | console.log(retString);
173 | }
174 |
175 | return q;
176 |
177 | }
178 | var data = dj( [ 0, 0 ], [ 79, 79 ] );
179 | var matrix = fs.readFile('matrix.txt', function( err, results ){
180 | rows = results.toString().split( '\n' ).map( function( row, i ){
181 | return row.split( ',' ).map( function( num, j ){
182 | data.createNode( i, j, parseInt( num ));
183 | return parseInt( num );
184 | });
185 | })
186 |
187 | data.start();
188 |
189 |
190 |
191 | });
192 |
--------------------------------------------------------------------------------
/083/Euler 83.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 |
5 | def read_file():
6 | matrix = []
7 | temp = open("matrix.txt" , "r").read().split("\n")
8 | matrix.append([])
9 | for line in temp:
10 | temp2 = [999999]
11 | temp1 = line.split(",")
12 | for num in temp1:
13 | temp2.append(int(num))
14 | temp2.append(999999)
15 | matrix.append(temp2)
16 | matrix.append([])
17 | for x in range(0,80):
18 | matrix[0].append(999999)
19 | matrix[-1].append(999999)
20 | return matrix
21 |
22 |
23 |
24 | def print_matrix(matrix):
25 | for row in matrix[1:81]:
26 | for number in row[1:81]:
27 | print repr(number).rjust(6),
28 | print ""
29 |
30 |
31 | def main():
32 | matrix = read_file()
33 | matrix1 = []
34 | print_matrix(matrix)
35 | for line in matrix:
36 | matrix1.append(line[:])
37 |
38 | print '\n\n\n'
39 | for count in range(159,0,-1):
40 | for i in range(1,count):
41 | j = count-i
42 | if j<=80 and i <=80:
43 | matrix[i][j]= min(matrix[i][j] + matrix[i+1][j], matrix[i][j] + matrix[i][j+1])
44 |
45 | for q in range(200):
46 | for count in range(159,0,-1):
47 | for i in range(1,count):
48 | j = count-i
49 | if j<80 and i <80:
50 | matrix[i][j]= min(matrix[i][j] , matrix1[i][j] + matrix[i][j-1] , matrix1[i][j] + matrix[i-1][j], matrix1[i][j] + matrix[i][j+1], matrix1[i][j] + matrix[i+1][j])
51 |
52 | print_matrix(matrix)
53 |
54 | min_vector = []
55 | for x in range(1,81):
56 | min_vector.append(matrix[x][1])
57 | print min_vector
58 |
59 |
60 |
61 | main()
62 |
--------------------------------------------------------------------------------
/083/matrix.txt:
--------------------------------------------------------------------------------
1 | 4445,2697,5115,718,2209,2212,654,4348,3079,6821,7668,3276,8874,4190,3785,2752,9473,7817,9137,496,7338,3434,7152,4355,4552,7917,7827,2460,2350,691,3514,5880,3145,7633,7199,3783,5066,7487,3285,1084,8985,760,872,8609,8051,1134,9536,5750,9716,9371,7619,5617,275,9721,2997,2698,1887,8825,6372,3014,2113,7122,7050,6775,5948,2758,1219,3539,348,7989,2735,9862,1263,8089,6401,9462,3168,2758,3748,5870
2 | 1096,20,1318,7586,5167,2642,1443,5741,7621,7030,5526,4244,2348,4641,9827,2448,6918,5883,3737,300,7116,6531,567,5997,3971,6623,820,6148,3287,1874,7981,8424,7672,7575,6797,6717,1078,5008,4051,8795,5820,346,1851,6463,2117,6058,3407,8211,117,4822,1317,4377,4434,5925,8341,4800,1175,4173,690,8978,7470,1295,3799,8724,3509,9849,618,3320,7068,9633,2384,7175,544,6583,1908,9983,481,4187,9353,9377
3 | 9607,7385,521,6084,1364,8983,7623,1585,6935,8551,2574,8267,4781,3834,2764,2084,2669,4656,9343,7709,2203,9328,8004,6192,5856,3555,2260,5118,6504,1839,9227,1259,9451,1388,7909,5733,6968,8519,9973,1663,5315,7571,3035,4325,4283,2304,6438,3815,9213,9806,9536,196,5542,6907,2475,1159,5820,9075,9470,2179,9248,1828,4592,9167,3713,4640,47,3637,309,7344,6955,346,378,9044,8635,7466,5036,9515,6385,9230
4 | 7206,3114,7760,1094,6150,5182,7358,7387,4497,955,101,1478,7777,6966,7010,8417,6453,4955,3496,107,449,8271,131,2948,6185,784,5937,8001,6104,8282,4165,3642,710,2390,575,715,3089,6964,4217,192,5949,7006,715,3328,1152,66,8044,4319,1735,146,4818,5456,6451,4113,1063,4781,6799,602,1504,6245,6550,1417,1343,2363,3785,5448,4545,9371,5420,5068,4613,4882,4241,5043,7873,8042,8434,3939,9256,2187
5 | 3620,8024,577,9997,7377,7682,1314,1158,6282,6310,1896,2509,5436,1732,9480,706,496,101,6232,7375,2207,2306,110,6772,3433,2878,8140,5933,8688,1399,2210,7332,6172,6403,7333,4044,2291,1790,2446,7390,8698,5723,3678,7104,1825,2040,140,3982,4905,4160,2200,5041,2512,1488,2268,1175,7588,8321,8078,7312,977,5257,8465,5068,3453,3096,1651,7906,253,9250,6021,8791,8109,6651,3412,345,4778,5152,4883,7505
6 | 1074,5438,9008,2679,5397,5429,2652,3403,770,9188,4248,2493,4361,8327,9587,707,9525,5913,93,1899,328,2876,3604,673,8576,6908,7659,2544,3359,3883,5273,6587,3065,1749,3223,604,9925,6941,2823,8767,7039,3290,3214,1787,7904,3421,7137,9560,8451,2669,9219,6332,1576,5477,6755,8348,4164,4307,2984,4012,6629,1044,2874,6541,4942,903,1404,9125,5160,8836,4345,2581,460,8438,1538,5507,668,3352,2678,6942
7 | 4295,1176,5596,1521,3061,9868,7037,7129,8933,6659,5947,5063,3653,9447,9245,2679,767,714,116,8558,163,3927,8779,158,5093,2447,5782,3967,1716,931,7772,8164,1117,9244,5783,7776,3846,8862,6014,2330,6947,1777,3112,6008,3491,1906,5952,314,4602,8994,5919,9214,3995,5026,7688,6809,5003,3128,2509,7477,110,8971,3982,8539,2980,4689,6343,5411,2992,5270,5247,9260,2269,7474,1042,7162,5206,1232,4556,4757
8 | 510,3556,5377,1406,5721,4946,2635,7847,4251,8293,8281,6351,4912,287,2870,3380,3948,5322,3840,4738,9563,1906,6298,3234,8959,1562,6297,8835,7861,239,6618,1322,2553,2213,5053,5446,4402,6500,5182,8585,6900,5756,9661,903,5186,7687,5998,7997,8081,8955,4835,6069,2621,1581,732,9564,1082,1853,5442,1342,520,1737,3703,5321,4793,2776,1508,1647,9101,2499,6891,4336,7012,3329,3212,1442,9993,3988,4930,7706
9 | 9444,3401,5891,9716,1228,7107,109,3563,2700,6161,5039,4992,2242,8541,7372,2067,1294,3058,1306,320,8881,5756,9326,411,8650,8824,5495,8282,8397,2000,1228,7817,2099,6473,3571,5994,4447,1299,5991,543,7874,2297,1651,101,2093,3463,9189,6872,6118,872,1008,1779,2805,9084,4048,2123,5877,55,3075,1737,9459,4535,6453,3644,108,5982,4437,5213,1340,6967,9943,5815,669,8074,1838,6979,9132,9315,715,5048
10 | 3327,4030,7177,6336,9933,5296,2621,4785,2755,4832,2512,2118,2244,4407,2170,499,7532,9742,5051,7687,970,6924,3527,4694,5145,1306,2165,5940,2425,8910,3513,1909,6983,346,6377,4304,9330,7203,6605,3709,3346,970,369,9737,5811,4427,9939,3693,8436,5566,1977,3728,2399,3985,8303,2492,5366,9802,9193,7296,1033,5060,9144,2766,1151,7629,5169,5995,58,7619,7565,4208,1713,6279,3209,4908,9224,7409,1325,8540
11 | 6882,1265,1775,3648,4690,959,5837,4520,5394,1378,9485,1360,4018,578,9174,2932,9890,3696,116,1723,1178,9355,7063,1594,1918,8574,7594,7942,1547,6166,7888,354,6932,4651,1010,7759,6905,661,7689,6092,9292,3845,9605,8443,443,8275,5163,7720,7265,6356,7779,1798,1754,5225,6661,1180,8024,5666,88,9153,1840,3508,1193,4445,2648,3538,6243,6375,8107,5902,5423,2520,1122,5015,6113,8859,9370,966,8673,2442
12 | 7338,3423,4723,6533,848,8041,7921,8277,4094,5368,7252,8852,9166,2250,2801,6125,8093,5738,4038,9808,7359,9494,601,9116,4946,2702,5573,2921,9862,1462,1269,2410,4171,2709,7508,6241,7522,615,2407,8200,4189,5492,5649,7353,2590,5203,4274,710,7329,9063,956,8371,3722,4253,4785,1194,4828,4717,4548,940,983,2575,4511,2938,1827,2027,2700,1236,841,5760,1680,6260,2373,3851,1841,4968,1172,5179,7175,3509
13 | 4420,1327,3560,2376,6260,2988,9537,4064,4829,8872,9598,3228,1792,7118,9962,9336,4368,9189,6857,1829,9863,6287,7303,7769,2707,8257,2391,2009,3975,4993,3068,9835,3427,341,8412,2134,4034,8511,6421,3041,9012,2983,7289,100,1355,7904,9186,6920,5856,2008,6545,8331,3655,5011,839,8041,9255,6524,3862,8788,62,7455,3513,5003,8413,3918,2076,7960,6108,3638,6999,3436,1441,4858,4181,1866,8731,7745,3744,1000
14 | 356,8296,8325,1058,1277,4743,3850,2388,6079,6462,2815,5620,8495,5378,75,4324,3441,9870,1113,165,1544,1179,2834,562,6176,2313,6836,8839,2986,9454,5199,6888,1927,5866,8760,320,1792,8296,7898,6121,7241,5886,5814,2815,8336,1576,4314,3109,2572,6011,2086,9061,9403,3947,5487,9731,7281,3159,1819,1334,3181,5844,5114,9898,4634,2531,4412,6430,4262,8482,4546,4555,6804,2607,9421,686,8649,8860,7794,6672
15 | 9870,152,1558,4963,8750,4754,6521,6256,8818,5208,5691,9659,8377,9725,5050,5343,2539,6101,1844,9700,7750,8114,5357,3001,8830,4438,199,9545,8496,43,2078,327,9397,106,6090,8181,8646,6414,7499,5450,4850,6273,5014,4131,7639,3913,6571,8534,9703,4391,7618,445,1320,5,1894,6771,7383,9191,4708,9706,6939,7937,8726,9382,5216,3685,2247,9029,8154,1738,9984,2626,9438,4167,6351,5060,29,1218,1239,4785
16 | 192,5213,8297,8974,4032,6966,5717,1179,6523,4679,9513,1481,3041,5355,9303,9154,1389,8702,6589,7818,6336,3539,5538,3094,6646,6702,6266,2759,4608,4452,617,9406,8064,6379,444,5602,4950,1810,8391,1536,316,8714,1178,5182,5863,5110,5372,4954,1978,2971,5680,4863,2255,4630,5723,2168,538,1692,1319,7540,440,6430,6266,7712,7385,5702,620,641,3136,7350,1478,3155,2820,9109,6261,1122,4470,14,8493,2095
17 | 1046,4301,6082,474,4974,7822,2102,5161,5172,6946,8074,9716,6586,9962,9749,5015,2217,995,5388,4402,7652,6399,6539,1349,8101,3677,1328,9612,7922,2879,231,5887,2655,508,4357,4964,3554,5930,6236,7384,4614,280,3093,9600,2110,7863,2631,6626,6620,68,1311,7198,7561,1768,5139,1431,221,230,2940,968,5283,6517,2146,1646,869,9402,7068,8645,7058,1765,9690,4152,2926,9504,2939,7504,6074,2944,6470,7859
18 | 4659,736,4951,9344,1927,6271,8837,8711,3241,6579,7660,5499,5616,3743,5801,4682,9748,8796,779,1833,4549,8138,4026,775,4170,2432,4174,3741,7540,8017,2833,4027,396,811,2871,1150,9809,2719,9199,8504,1224,540,2051,3519,7982,7367,2761,308,3358,6505,2050,4836,5090,7864,805,2566,2409,6876,3361,8622,5572,5895,3280,441,7893,8105,1634,2929,274,3926,7786,6123,8233,9921,2674,5340,1445,203,4585,3837
19 | 5759,338,7444,7968,7742,3755,1591,4839,1705,650,7061,2461,9230,9391,9373,2413,1213,431,7801,4994,2380,2703,6161,6878,8331,2538,6093,1275,5065,5062,2839,582,1014,8109,3525,1544,1569,8622,7944,2905,6120,1564,1839,5570,7579,1318,2677,5257,4418,5601,7935,7656,5192,1864,5886,6083,5580,6202,8869,1636,7907,4759,9082,5854,3185,7631,6854,5872,5632,5280,1431,2077,9717,7431,4256,8261,9680,4487,4752,4286
20 | 1571,1428,8599,1230,7772,4221,8523,9049,4042,8726,7567,6736,9033,2104,4879,4967,6334,6716,3994,1269,8995,6539,3610,7667,6560,6065,874,848,4597,1711,7161,4811,6734,5723,6356,6026,9183,2586,5636,1092,7779,7923,8747,6887,7505,9909,1792,3233,4526,3176,1508,8043,720,5212,6046,4988,709,5277,8256,3642,1391,5803,1468,2145,3970,6301,7767,2359,8487,9771,8785,7520,856,1605,8972,2402,2386,991,1383,5963
21 | 1822,4824,5957,6511,9868,4113,301,9353,6228,2881,2966,6956,9124,9574,9233,1601,7340,973,9396,540,4747,8590,9535,3650,7333,7583,4806,3593,2738,8157,5215,8472,2284,9473,3906,6982,5505,6053,7936,6074,7179,6688,1564,1103,6860,5839,2022,8490,910,7551,7805,881,7024,1855,9448,4790,1274,3672,2810,774,7623,4223,4850,6071,9975,4935,1915,9771,6690,3846,517,463,7624,4511,614,6394,3661,7409,1395,8127
22 | 8738,3850,9555,3695,4383,2378,87,6256,6740,7682,9546,4255,6105,2000,1851,4073,8957,9022,6547,5189,2487,303,9602,7833,1628,4163,6678,3144,8589,7096,8913,5823,4890,7679,1212,9294,5884,2972,3012,3359,7794,7428,1579,4350,7246,4301,7779,7790,3294,9547,4367,3549,1958,8237,6758,3497,3250,3456,6318,1663,708,7714,6143,6890,3428,6853,9334,7992,591,6449,9786,1412,8500,722,5468,1371,108,3939,4199,2535
23 | 7047,4323,1934,5163,4166,461,3544,2767,6554,203,6098,2265,9078,2075,4644,6641,8412,9183,487,101,7566,5622,1975,5726,2920,5374,7779,5631,3753,3725,2672,3621,4280,1162,5812,345,8173,9785,1525,955,5603,2215,2580,5261,2765,2990,5979,389,3907,2484,1232,5933,5871,3304,1138,1616,5114,9199,5072,7442,7245,6472,4760,6359,9053,7876,2564,9404,3043,9026,2261,3374,4460,7306,2326,966,828,3274,1712,3446
24 | 3975,4565,8131,5800,4570,2306,8838,4392,9147,11,3911,7118,9645,4994,2028,6062,5431,2279,8752,2658,7836,994,7316,5336,7185,3289,1898,9689,2331,5737,3403,1124,2679,3241,7748,16,2724,5441,6640,9368,9081,5618,858,4969,17,2103,6035,8043,7475,2181,939,415,1617,8500,8253,2155,7843,7974,7859,1746,6336,3193,2617,8736,4079,6324,6645,8891,9396,5522,6103,1857,8979,3835,2475,1310,7422,610,8345,7615
25 | 9248,5397,5686,2988,3446,4359,6634,9141,497,9176,6773,7448,1907,8454,916,1596,2241,1626,1384,2741,3649,5362,8791,7170,2903,2475,5325,6451,924,3328,522,90,4813,9737,9557,691,2388,1383,4021,1609,9206,4707,5200,7107,8104,4333,9860,5013,1224,6959,8527,1877,4545,7772,6268,621,4915,9349,5970,706,9583,3071,4127,780,8231,3017,9114,3836,7503,2383,1977,4870,8035,2379,9704,1037,3992,3642,1016,4303
26 | 5093,138,4639,6609,1146,5565,95,7521,9077,2272,974,4388,2465,2650,722,4998,3567,3047,921,2736,7855,173,2065,4238,1048,5,6847,9548,8632,9194,5942,4777,7910,8971,6279,7253,2516,1555,1833,3184,9453,9053,6897,7808,8629,4877,1871,8055,4881,7639,1537,7701,2508,7564,5845,5023,2304,5396,3193,2955,1088,3801,6203,1748,3737,1276,13,4120,7715,8552,3047,2921,106,7508,304,1280,7140,2567,9135,5266
27 | 6237,4607,7527,9047,522,7371,4883,2540,5867,6366,5301,1570,421,276,3361,527,6637,4861,2401,7522,5808,9371,5298,2045,5096,5447,7755,5115,7060,8529,4078,1943,1697,1764,5453,7085,960,2405,739,2100,5800,728,9737,5704,5693,1431,8979,6428,673,7540,6,7773,5857,6823,150,5869,8486,684,5816,9626,7451,5579,8260,3397,5322,6920,1879,2127,2884,5478,4977,9016,6165,6292,3062,5671,5968,78,4619,4763
28 | 9905,7127,9390,5185,6923,3721,9164,9705,4341,1031,1046,5127,7376,6528,3248,4941,1178,7889,3364,4486,5358,9402,9158,8600,1025,874,1839,1783,309,9030,1843,845,8398,1433,7118,70,8071,2877,3904,8866,6722,4299,10,1929,5897,4188,600,1889,3325,2485,6473,4474,7444,6992,4846,6166,4441,2283,2629,4352,7775,1101,2214,9985,215,8270,9750,2740,8361,7103,5930,8664,9690,8302,9267,344,2077,1372,1880,9550
29 | 5825,8517,7769,2405,8204,1060,3603,7025,478,8334,1997,3692,7433,9101,7294,7498,9415,5452,3850,3508,6857,9213,6807,4412,7310,854,5384,686,4978,892,8651,3241,2743,3801,3813,8588,6701,4416,6990,6490,3197,6838,6503,114,8343,5844,8646,8694,65,791,5979,2687,2621,2019,8097,1423,3644,9764,4921,3266,3662,5561,2476,8271,8138,6147,1168,3340,1998,9874,6572,9873,6659,5609,2711,3931,9567,4143,7833,8887
30 | 6223,2099,2700,589,4716,8333,1362,5007,2753,2848,4441,8397,7192,8191,4916,9955,6076,3370,6396,6971,3156,248,3911,2488,4930,2458,7183,5455,170,6809,6417,3390,1956,7188,577,7526,2203,968,8164,479,8699,7915,507,6393,4632,1597,7534,3604,618,3280,6061,9793,9238,8347,568,9645,2070,5198,6482,5000,9212,6655,5961,7513,1323,3872,6170,3812,4146,2736,67,3151,5548,2781,9679,7564,5043,8587,1893,4531
31 | 5826,3690,6724,2121,9308,6986,8106,6659,2142,1642,7170,2877,5757,6494,8026,6571,8387,9961,6043,9758,9607,6450,8631,8334,7359,5256,8523,2225,7487,1977,9555,8048,5763,2414,4948,4265,2427,8978,8088,8841,9208,9601,5810,9398,8866,9138,4176,5875,7212,3272,6759,5678,7649,4922,5422,1343,8197,3154,3600,687,1028,4579,2084,9467,4492,7262,7296,6538,7657,7134,2077,1505,7332,6890,8964,4879,7603,7400,5973,739
32 | 1861,1613,4879,1884,7334,966,2000,7489,2123,4287,1472,3263,4726,9203,1040,4103,6075,6049,330,9253,4062,4268,1635,9960,577,1320,3195,9628,1030,4092,4979,6474,6393,2799,6967,8687,7724,7392,9927,2085,3200,6466,8702,265,7646,8665,7986,7266,4574,6587,612,2724,704,3191,8323,9523,3002,704,5064,3960,8209,2027,2758,8393,4875,4641,9584,6401,7883,7014,768,443,5490,7506,1852,2005,8850,5776,4487,4269
33 | 4052,6687,4705,7260,6645,6715,3706,5504,8672,2853,1136,8187,8203,4016,871,1809,1366,4952,9294,5339,6872,2645,6083,7874,3056,5218,7485,8796,7401,3348,2103,426,8572,4163,9171,3176,948,7654,9344,3217,1650,5580,7971,2622,76,2874,880,2034,9929,1546,2659,5811,3754,7096,7436,9694,9960,7415,2164,953,2360,4194,2397,1047,2196,6827,575,784,2675,8821,6802,7972,5996,6699,2134,7577,2887,1412,4349,4380
34 | 4629,2234,6240,8132,7592,3181,6389,1214,266,1910,2451,8784,2790,1127,6932,1447,8986,2492,5476,397,889,3027,7641,5083,5776,4022,185,3364,5701,2442,2840,4160,9525,4828,6602,2614,7447,3711,4505,7745,8034,6514,4907,2605,7753,6958,7270,6936,3006,8968,439,2326,4652,3085,3425,9863,5049,5361,8688,297,7580,8777,7916,6687,8683,7141,306,9569,2384,1500,3346,4601,7329,9040,6097,2727,6314,4501,4974,2829
35 | 8316,4072,2025,6884,3027,1808,5714,7624,7880,8528,4205,8686,7587,3230,1139,7273,6163,6986,3914,9309,1464,9359,4474,7095,2212,7302,2583,9462,7532,6567,1606,4436,8981,5612,6796,4385,5076,2007,6072,3678,8331,1338,3299,8845,4783,8613,4071,1232,6028,2176,3990,2148,3748,103,9453,538,6745,9110,926,3125,473,5970,8728,7072,9062,1404,1317,5139,9862,6496,6062,3338,464,1600,2532,1088,8232,7739,8274,3873
36 | 2341,523,7096,8397,8301,6541,9844,244,4993,2280,7689,4025,4196,5522,7904,6048,2623,9258,2149,9461,6448,8087,7245,1917,8340,7127,8466,5725,6996,3421,5313,512,9164,9837,9794,8369,4185,1488,7210,1524,1016,4620,9435,2478,7765,8035,697,6677,3724,6988,5853,7662,3895,9593,1185,4727,6025,5734,7665,3070,138,8469,6748,6459,561,7935,8646,2378,462,7755,3115,9690,8877,3946,2728,8793,244,6323,8666,4271
37 | 6430,2406,8994,56,1267,3826,9443,7079,7579,5232,6691,3435,6718,5698,4144,7028,592,2627,217,734,6194,8156,9118,58,2640,8069,4127,3285,694,3197,3377,4143,4802,3324,8134,6953,7625,3598,3584,4289,7065,3434,2106,7132,5802,7920,9060,7531,3321,1725,1067,3751,444,5503,6785,7937,6365,4803,198,6266,8177,1470,6390,1606,2904,7555,9834,8667,2033,1723,5167,1666,8546,8152,473,4475,6451,7947,3062,3281
38 | 2810,3042,7759,1741,2275,2609,7676,8640,4117,1958,7500,8048,1757,3954,9270,1971,4796,2912,660,5511,3553,1012,5757,4525,6084,7198,8352,5775,7726,8591,7710,9589,3122,4392,6856,5016,749,2285,3356,7482,9956,7348,2599,8944,495,3462,3578,551,4543,7207,7169,7796,1247,4278,6916,8176,3742,8385,2310,1345,8692,2667,4568,1770,8319,3585,4920,3890,4928,7343,5385,9772,7947,8786,2056,9266,3454,2807,877,2660
39 | 6206,8252,5928,5837,4177,4333,207,7934,5581,9526,8906,1498,8411,2984,5198,5134,2464,8435,8514,8674,3876,599,5327,826,2152,4084,2433,9327,9697,4800,2728,3608,3849,3861,3498,9943,1407,3991,7191,9110,5666,8434,4704,6545,5944,2357,1163,4995,9619,6754,4200,9682,6654,4862,4744,5953,6632,1054,293,9439,8286,2255,696,8709,1533,1844,6441,430,1999,6063,9431,7018,8057,2920,6266,6799,356,3597,4024,6665
40 | 3847,6356,8541,7225,2325,2946,5199,469,5450,7508,2197,9915,8284,7983,6341,3276,3321,16,1321,7608,5015,3362,8491,6968,6818,797,156,2575,706,9516,5344,5457,9210,5051,8099,1617,9951,7663,8253,9683,2670,1261,4710,1068,8753,4799,1228,2621,3275,6188,4699,1791,9518,8701,5932,4275,6011,9877,2933,4182,6059,2930,6687,6682,9771,654,9437,3169,8596,1827,5471,8909,2352,123,4394,3208,8756,5513,6917,2056
41 | 5458,8173,3138,3290,4570,4892,3317,4251,9699,7973,1163,1935,5477,6648,9614,5655,9592,975,9118,2194,7322,8248,8413,3462,8560,1907,7810,6650,7355,2939,4973,6894,3933,3784,3200,2419,9234,4747,2208,2207,1945,2899,1407,6145,8023,3484,5688,7686,2737,3828,3704,9004,5190,9740,8643,8650,5358,4426,1522,1707,3613,9887,6956,2447,2762,833,1449,9489,2573,1080,4167,3456,6809,2466,227,7125,2759,6250,6472,8089
42 | 3266,7025,9756,3914,1265,9116,7723,9788,6805,5493,2092,8688,6592,9173,4431,4028,6007,7131,4446,4815,3648,6701,759,3312,8355,4485,4187,5188,8746,7759,3528,2177,5243,8379,3838,7233,4607,9187,7216,2190,6967,2920,6082,7910,5354,3609,8958,6949,7731,494,8753,8707,1523,4426,3543,7085,647,6771,9847,646,5049,824,8417,5260,2730,5702,2513,9275,4279,2767,8684,1165,9903,4518,55,9682,8963,6005,2102,6523
43 | 1998,8731,936,1479,5259,7064,4085,91,7745,7136,3773,3810,730,8255,2705,2653,9790,6807,2342,355,9344,2668,3690,2028,9679,8102,574,4318,6481,9175,5423,8062,2867,9657,7553,3442,3920,7430,3945,7639,3714,3392,2525,4995,4850,2867,7951,9667,486,9506,9888,781,8866,1702,3795,90,356,1483,4200,2131,6969,5931,486,6880,4404,1084,5169,4910,6567,8335,4686,5043,2614,3352,2667,4513,6472,7471,5720,1616
44 | 8878,1613,1716,868,1906,2681,564,665,5995,2474,7496,3432,9491,9087,8850,8287,669,823,347,6194,2264,2592,7871,7616,8508,4827,760,2676,4660,4881,7572,3811,9032,939,4384,929,7525,8419,5556,9063,662,8887,7026,8534,3111,1454,2082,7598,5726,6687,9647,7608,73,3014,5063,670,5461,5631,3367,9796,8475,7908,5073,1565,5008,5295,4457,1274,4788,1728,338,600,8415,8535,9351,7750,6887,5845,1741,125
45 | 3637,6489,9634,9464,9055,2413,7824,9517,7532,3577,7050,6186,6980,9365,9782,191,870,2497,8498,2218,2757,5420,6468,586,3320,9230,1034,1393,9886,5072,9391,1178,8464,8042,6869,2075,8275,3601,7715,9470,8786,6475,8373,2159,9237,2066,3264,5000,679,355,3069,4073,494,2308,5512,4334,9438,8786,8637,9774,1169,1949,6594,6072,4270,9158,7916,5752,6794,9391,6301,5842,3285,2141,3898,8027,4310,8821,7079,1307
46 | 8497,6681,4732,7151,7060,5204,9030,7157,833,5014,8723,3207,9796,9286,4913,119,5118,7650,9335,809,3675,2597,5144,3945,5090,8384,187,4102,1260,2445,2792,4422,8389,9290,50,1765,1521,6921,8586,4368,1565,5727,7855,2003,4834,9897,5911,8630,5070,1330,7692,7557,7980,6028,5805,9090,8265,3019,3802,698,9149,5748,1965,9658,4417,5994,5584,8226,2937,272,5743,1278,5698,8736,2595,6475,5342,6596,1149,6920
47 | 8188,8009,9546,6310,8772,2500,9846,6592,6872,3857,1307,8125,7042,1544,6159,2330,643,4604,7899,6848,371,8067,2062,3200,7295,1857,9505,6936,384,2193,2190,301,8535,5503,1462,7380,5114,4824,8833,1763,4974,8711,9262,6698,3999,2645,6937,7747,1128,2933,3556,7943,2885,3122,9105,5447,418,2899,5148,3699,9021,9501,597,4084,175,1621,1,1079,6067,5812,4326,9914,6633,5394,4233,6728,9084,1864,5863,1225
48 | 9935,8793,9117,1825,9542,8246,8437,3331,9128,9675,6086,7075,319,1334,7932,3583,7167,4178,1726,7720,695,8277,7887,6359,5912,1719,2780,8529,1359,2013,4498,8072,1129,9998,1147,8804,9405,6255,1619,2165,7491,1,8882,7378,3337,503,5758,4109,3577,985,3200,7615,8058,5032,1080,6410,6873,5496,1466,2412,9885,5904,4406,3605,8770,4361,6205,9193,1537,9959,214,7260,9566,1685,100,4920,7138,9819,5637,976
49 | 3466,9854,985,1078,7222,8888,5466,5379,3578,4540,6853,8690,3728,6351,7147,3134,6921,9692,857,3307,4998,2172,5783,3931,9417,2541,6299,13,787,2099,9131,9494,896,8600,1643,8419,7248,2660,2609,8579,91,6663,5506,7675,1947,6165,4286,1972,9645,3805,1663,1456,8853,5705,9889,7489,1107,383,4044,2969,3343,152,7805,4980,9929,5033,1737,9953,7197,9158,4071,1324,473,9676,3984,9680,3606,8160,7384,5432
50 | 1005,4512,5186,3953,2164,3372,4097,3247,8697,3022,9896,4101,3871,6791,3219,2742,4630,6967,7829,5991,6134,1197,1414,8923,8787,1394,8852,5019,7768,5147,8004,8825,5062,9625,7988,1110,3992,7984,9966,6516,6251,8270,421,3723,1432,4830,6935,8095,9059,2214,6483,6846,3120,1587,6201,6691,9096,9627,6671,4002,3495,9939,7708,7465,5879,6959,6634,3241,3401,2355,9061,2611,7830,3941,2177,2146,5089,7079,519,6351
51 | 7280,8586,4261,2831,7217,3141,9994,9940,5462,2189,4005,6942,9848,5350,8060,6665,7519,4324,7684,657,9453,9296,2944,6843,7499,7847,1728,9681,3906,6353,5529,2822,3355,3897,7724,4257,7489,8672,4356,3983,1948,6892,7415,4153,5893,4190,621,1736,4045,9532,7701,3671,1211,1622,3176,4524,9317,7800,5638,6644,6943,5463,3531,2821,1347,5958,3436,1438,2999,994,850,4131,2616,1549,3465,5946,690,9273,6954,7991
52 | 9517,399,3249,2596,7736,2142,1322,968,7350,1614,468,3346,3265,7222,6086,1661,5317,2582,7959,4685,2807,2917,1037,5698,1529,3972,8716,2634,3301,3412,8621,743,8001,4734,888,7744,8092,3671,8941,1487,5658,7099,2781,99,1932,4443,4756,4652,9328,1581,7855,4312,5976,7255,6480,3996,2748,1973,9731,4530,2790,9417,7186,5303,3557,351,7182,9428,1342,9020,7599,1392,8304,2070,9138,7215,2008,9937,1106,7110
53 | 7444,769,9688,632,1571,6820,8743,4338,337,3366,3073,1946,8219,104,4210,6986,249,5061,8693,7960,6546,1004,8857,5997,9352,4338,6105,5008,2556,6518,6694,4345,3727,7956,20,3954,8652,4424,9387,2035,8358,5962,5304,5194,8650,8282,1256,1103,2138,6679,1985,3653,2770,2433,4278,615,2863,1715,242,3790,2636,6998,3088,1671,2239,957,5411,4595,6282,2881,9974,2401,875,7574,2987,4587,3147,6766,9885,2965
54 | 3287,3016,3619,6818,9073,6120,5423,557,2900,2015,8111,3873,1314,4189,1846,4399,7041,7583,2427,2864,3525,5002,2069,748,1948,6015,2684,438,770,8367,1663,7887,7759,1885,157,7770,4520,4878,3857,1137,3525,3050,6276,5569,7649,904,4533,7843,2199,5648,7628,9075,9441,3600,7231,2388,5640,9096,958,3058,584,5899,8150,1181,9616,1098,8162,6819,8171,1519,1140,7665,8801,2632,1299,9192,707,9955,2710,7314
55 | 1772,2963,7578,3541,3095,1488,7026,2634,6015,4633,4370,2762,1650,2174,909,8158,2922,8467,4198,4280,9092,8856,8835,5457,2790,8574,9742,5054,9547,4156,7940,8126,9824,7340,8840,6574,3547,1477,3014,6798,7134,435,9484,9859,3031,4,1502,4133,1738,1807,4825,463,6343,9701,8506,9822,9555,8688,8168,3467,3234,6318,1787,5591,419,6593,7974,8486,9861,6381,6758,194,3061,4315,2863,4665,3789,2201,1492,4416
56 | 126,8927,6608,5682,8986,6867,1715,6076,3159,788,3140,4744,830,9253,5812,5021,7616,8534,1546,9590,1101,9012,9821,8132,7857,4086,1069,7491,2988,1579,2442,4321,2149,7642,6108,250,6086,3167,24,9528,7663,2685,1220,9196,1397,5776,1577,1730,5481,977,6115,199,6326,2183,3767,5928,5586,7561,663,8649,9688,949,5913,9160,1870,5764,9887,4477,6703,1413,4995,5494,7131,2192,8969,7138,3997,8697,646,1028
57 | 8074,1731,8245,624,4601,8706,155,8891,309,2552,8208,8452,2954,3124,3469,4246,3352,1105,4509,8677,9901,4416,8191,9283,5625,7120,2952,8881,7693,830,4580,8228,9459,8611,4499,1179,4988,1394,550,2336,6089,6872,269,7213,1848,917,6672,4890,656,1478,6536,3165,4743,4990,1176,6211,7207,5284,9730,4738,1549,4986,4942,8645,3698,9429,1439,2175,6549,3058,6513,1574,6988,8333,3406,5245,5431,7140,7085,6407
58 | 7845,4694,2530,8249,290,5948,5509,1588,5940,4495,5866,5021,4626,3979,3296,7589,4854,1998,5627,3926,8346,6512,9608,1918,7070,4747,4182,2858,2766,4606,6269,4107,8982,8568,9053,4244,5604,102,2756,727,5887,2566,7922,44,5986,621,1202,374,6988,4130,3627,6744,9443,4568,1398,8679,397,3928,9159,367,2917,6127,5788,3304,8129,911,2669,1463,9749,264,4478,8940,1109,7309,2462,117,4692,7724,225,2312
59 | 4164,3637,2000,941,8903,39,3443,7172,1031,3687,4901,8082,4945,4515,7204,9310,9349,9535,9940,218,1788,9245,2237,1541,5670,6538,6047,5553,9807,8101,1925,8714,445,8332,7309,6830,5786,5736,7306,2710,3034,1838,7969,6318,7912,2584,2080,7437,6705,2254,7428,820,782,9861,7596,3842,3631,8063,5240,6666,394,4565,7865,4895,9890,6028,6117,4724,9156,4473,4552,602,470,6191,4927,5387,884,3146,1978,3000
60 | 4258,6880,1696,3582,5793,4923,2119,1155,9056,9698,6603,3768,5514,9927,9609,6166,6566,4536,4985,4934,8076,9062,6741,6163,7399,4562,2337,5600,2919,9012,8459,1308,6072,1225,9306,8818,5886,7243,7365,8792,6007,9256,6699,7171,4230,7002,8720,7839,4533,1671,478,7774,1607,2317,5437,4705,7886,4760,6760,7271,3081,2997,3088,7675,6208,3101,6821,6840,122,9633,4900,2067,8546,4549,2091,7188,5605,8599,6758,5229
61 | 7854,5243,9155,3556,8812,7047,2202,1541,5993,4600,4760,713,434,7911,7426,7414,8729,322,803,7960,7563,4908,6285,6291,736,3389,9339,4132,8701,7534,5287,3646,592,3065,7582,2592,8755,6068,8597,1982,5782,1894,2900,6236,4039,6569,3037,5837,7698,700,7815,2491,7272,5878,3083,6778,6639,3589,5010,8313,2581,6617,5869,8402,6808,2951,2321,5195,497,2190,6187,1342,1316,4453,7740,4154,2959,1781,1482,8256
62 | 7178,2046,4419,744,8312,5356,6855,8839,319,2962,5662,47,6307,8662,68,4813,567,2712,9931,1678,3101,8227,6533,4933,6656,92,5846,4780,6256,6361,4323,9985,1231,2175,7178,3034,9744,6155,9165,7787,5836,9318,7860,9644,8941,6480,9443,8188,5928,161,6979,2352,5628,6991,1198,8067,5867,6620,3778,8426,2994,3122,3124,6335,3918,8897,2655,9670,634,1088,1576,8935,7255,474,8166,7417,9547,2886,5560,3842
63 | 6957,3111,26,7530,7143,1295,1744,6057,3009,1854,8098,5405,2234,4874,9447,2620,9303,27,7410,969,40,2966,5648,7596,8637,4238,3143,3679,7187,690,9980,7085,7714,9373,5632,7526,6707,3951,9734,4216,2146,3602,5371,6029,3039,4433,4855,4151,1449,3376,8009,7240,7027,4602,2947,9081,4045,8424,9352,8742,923,2705,4266,3232,2264,6761,363,2651,3383,7770,6730,7856,7340,9679,2158,610,4471,4608,910,6241
64 | 4417,6756,1013,8797,658,8809,5032,8703,7541,846,3357,2920,9817,1745,9980,7593,4667,3087,779,3218,6233,5568,4296,2289,2654,7898,5021,9461,5593,8214,9173,4203,2271,7980,2983,5952,9992,8399,3468,1776,3188,9314,1720,6523,2933,621,8685,5483,8986,6163,3444,9539,4320,155,3992,2828,2150,6071,524,2895,5468,8063,1210,3348,9071,4862,483,9017,4097,6186,9815,3610,5048,1644,1003,9865,9332,2145,1944,2213
65 | 9284,3803,4920,1927,6706,4344,7383,4786,9890,2010,5228,1224,3158,6967,8580,8990,8883,5213,76,8306,2031,4980,5639,9519,7184,5645,7769,3259,8077,9130,1317,3096,9624,3818,1770,695,2454,947,6029,3474,9938,3527,5696,4760,7724,7738,2848,6442,5767,6845,8323,4131,2859,7595,2500,4815,3660,9130,8580,7016,8231,4391,8369,3444,4069,4021,556,6154,627,2778,1496,4206,6356,8434,8491,3816,8231,3190,5575,1015
66 | 3787,7572,1788,6803,5641,6844,1961,4811,8535,9914,9999,1450,8857,738,4662,8569,6679,2225,7839,8618,286,2648,5342,2294,3205,4546,176,8705,3741,6134,8324,8021,7004,5205,7032,6637,9442,5539,5584,4819,5874,5807,8589,6871,9016,983,1758,3786,1519,6241,185,8398,495,3370,9133,3051,4549,9674,7311,9738,3316,9383,2658,2776,9481,7558,619,3943,3324,6491,4933,153,9738,4623,912,3595,7771,7939,1219,4405
67 | 2650,3883,4154,5809,315,7756,4430,1788,4451,1631,6461,7230,6017,5751,138,588,5282,2442,9110,9035,6349,2515,1570,6122,4192,4174,3530,1933,4186,4420,4609,5739,4135,2963,6308,1161,8809,8619,2796,3819,6971,8228,4188,1492,909,8048,2328,6772,8467,7671,9068,2226,7579,6422,7056,8042,3296,2272,3006,2196,7320,3238,3490,3102,37,1293,3212,4767,5041,8773,5794,4456,6174,7279,7054,2835,7053,9088,790,6640
68 | 3101,1057,7057,3826,6077,1025,2955,1224,1114,6729,5902,4698,6239,7203,9423,1804,4417,6686,1426,6941,8071,1029,4985,9010,6122,6597,1622,1574,3513,1684,7086,5505,3244,411,9638,4150,907,9135,829,981,1707,5359,8781,9751,5,9131,3973,7159,1340,6955,7514,7993,6964,8198,1933,2797,877,3993,4453,8020,9349,8646,2779,8679,2961,3547,3374,3510,1129,3568,2241,2625,9138,5974,8206,7669,7678,1833,8700,4480
69 | 4865,9912,8038,8238,782,3095,8199,1127,4501,7280,2112,2487,3626,2790,9432,1475,6312,8277,4827,2218,5806,7132,8752,1468,7471,6386,739,8762,8323,8120,5169,9078,9058,3370,9560,7987,8585,8531,5347,9312,1058,4271,1159,5286,5404,6925,8606,9204,7361,2415,560,586,4002,2644,1927,2824,768,4409,2942,3345,1002,808,4941,6267,7979,5140,8643,7553,9438,7320,4938,2666,4609,2778,8158,6730,3748,3867,1866,7181
70 | 171,3771,7134,8927,4778,2913,3326,2004,3089,7853,1378,1729,4777,2706,9578,1360,5693,3036,1851,7248,2403,2273,8536,6501,9216,613,9671,7131,7719,6425,773,717,8803,160,1114,7554,7197,753,4513,4322,8499,4533,2609,4226,8710,6627,644,9666,6260,4870,5744,7385,6542,6203,7703,6130,8944,5589,2262,6803,6381,7414,6888,5123,7320,9392,9061,6780,322,8975,7050,5089,1061,2260,3199,1150,1865,5386,9699,6501
71 | 3744,8454,6885,8277,919,1923,4001,6864,7854,5519,2491,6057,8794,9645,1776,5714,9786,9281,7538,6916,3215,395,2501,9618,4835,8846,9708,2813,3303,1794,8309,7176,2206,1602,1838,236,4593,2245,8993,4017,10,8215,6921,5206,4023,5932,6997,7801,262,7640,3107,8275,4938,7822,2425,3223,3886,2105,8700,9526,2088,8662,8034,7004,5710,2124,7164,3574,6630,9980,4242,2901,9471,1491,2117,4562,1130,9086,4117,6698
72 | 2810,2280,2331,1170,4554,4071,8387,1215,2274,9848,6738,1604,7281,8805,439,1298,8318,7834,9426,8603,6092,7944,1309,8828,303,3157,4638,4439,9175,1921,4695,7716,1494,1015,1772,5913,1127,1952,1950,8905,4064,9890,385,9357,7945,5035,7082,5369,4093,6546,5187,5637,2041,8946,1758,7111,6566,1027,1049,5148,7224,7248,296,6169,375,1656,7993,2816,3717,4279,4675,1609,3317,42,6201,3100,3144,163,9530,4531
73 | 7096,6070,1009,4988,3538,5801,7149,3063,2324,2912,7911,7002,4338,7880,2481,7368,3516,2016,7556,2193,1388,3865,8125,4637,4096,8114,750,3144,1938,7002,9343,4095,1392,4220,3455,6969,9647,1321,9048,1996,1640,6626,1788,314,9578,6630,2813,6626,4981,9908,7024,4355,3201,3521,3864,3303,464,1923,595,9801,3391,8366,8084,9374,1041,8807,9085,1892,9431,8317,9016,9221,8574,9981,9240,5395,2009,6310,2854,9255
74 | 8830,3145,2960,9615,8220,6061,3452,2918,6481,9278,2297,3385,6565,7066,7316,5682,107,7646,4466,68,1952,9603,8615,54,7191,791,6833,2560,693,9733,4168,570,9127,9537,1925,8287,5508,4297,8452,8795,6213,7994,2420,4208,524,5915,8602,8330,2651,8547,6156,1812,6271,7991,9407,9804,1553,6866,1128,2119,4691,9711,8315,5879,9935,6900,482,682,4126,1041,428,6247,3720,5882,7526,2582,4327,7725,3503,2631
75 | 2738,9323,721,7434,1453,6294,2957,3786,5722,6019,8685,4386,3066,9057,6860,499,5315,3045,5194,7111,3137,9104,941,586,3066,755,4177,8819,7040,5309,3583,3897,4428,7788,4721,7249,6559,7324,825,7311,3760,6064,6070,9672,4882,584,1365,9739,9331,5783,2624,7889,1604,1303,1555,7125,8312,425,8936,3233,7724,1480,403,7440,1784,1754,4721,1569,652,3893,4574,5692,9730,4813,9844,8291,9199,7101,3391,8914
76 | 6044,2928,9332,3328,8588,447,3830,1176,3523,2705,8365,6136,5442,9049,5526,8575,8869,9031,7280,706,2794,8814,5767,4241,7696,78,6570,556,5083,1426,4502,3336,9518,2292,1885,3740,3153,9348,9331,8051,2759,5407,9028,7840,9255,831,515,2612,9747,7435,8964,4971,2048,4900,5967,8271,1719,9670,2810,6777,1594,6367,6259,8316,3815,1689,6840,9437,4361,822,9619,3065,83,6344,7486,8657,8228,9635,6932,4864
77 | 8478,4777,6334,4678,7476,4963,6735,3096,5860,1405,5127,7269,7793,4738,227,9168,2996,8928,765,733,1276,7677,6258,1528,9558,3329,302,8901,1422,8277,6340,645,9125,8869,5952,141,8141,1816,9635,4025,4184,3093,83,2344,2747,9352,7966,1206,1126,1826,218,7939,2957,2729,810,8752,5247,4174,4038,8884,7899,9567,301,5265,5752,7524,4381,1669,3106,8270,6228,6373,754,2547,4240,2313,5514,3022,1040,9738
78 | 2265,8192,1763,1369,8469,8789,4836,52,1212,6690,5257,8918,6723,6319,378,4039,2421,8555,8184,9577,1432,7139,8078,5452,9628,7579,4161,7490,5159,8559,1011,81,478,5840,1964,1334,6875,8670,9900,739,1514,8692,522,9316,6955,1345,8132,2277,3193,9773,3923,4177,2183,1236,6747,6575,4874,6003,6409,8187,745,8776,9440,7543,9825,2582,7381,8147,7236,5185,7564,6125,218,7991,6394,391,7659,7456,5128,5294
79 | 2132,8992,8160,5782,4420,3371,3798,5054,552,5631,7546,4716,1332,6486,7892,7441,4370,6231,4579,2121,8615,1145,9391,1524,1385,2400,9437,2454,7896,7467,2928,8400,3299,4025,7458,4703,7206,6358,792,6200,725,4275,4136,7390,5984,4502,7929,5085,8176,4600,119,3568,76,9363,6943,2248,9077,9731,6213,5817,6729,4190,3092,6910,759,2682,8380,1254,9604,3011,9291,5329,9453,9746,2739,6522,3765,5634,1113,5789
80 | 5304,5499,564,2801,679,2653,1783,3608,7359,7797,3284,796,3222,437,7185,6135,8571,2778,7488,5746,678,6140,861,7750,803,9859,9918,2425,3734,2698,9005,4864,9818,6743,2475,132,9486,3825,5472,919,292,4411,7213,7699,6435,9019,6769,1388,802,2124,1345,8493,9487,8558,7061,8777,8833,2427,2238,5409,4957,8503,3171,7622,5779,6145,2417,5873,5563,5693,9574,9491,1937,7384,4563,6842,5432,2751,3406,7981
--------------------------------------------------------------------------------
/086/Euler 86.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 | def get_cubes(m):
5 | sum = 0
6 | sum1 = 1
7 | for x in range(1,m+1):
8 | for y in range(1,x+1):
9 | for z in range(1,y+1):
10 | sum1+=1
11 | a = max(x,y,z)
12 | b = x+y+z-a
13 | if (a**2+b**2)**.5==int((a**2+b**2)**.5):
14 | sum+=1
15 | return sum
16 |
17 |
18 | print get_cubes(10)
19 |
--------------------------------------------------------------------------------
/086/euler861.py:
--------------------------------------------------------------------------------
1 | __author__ = 'eddolan'
2 |
3 |
4 | triangles = []
5 |
6 |
7 | def get_cubes(num):
8 | sum = 0
9 | a , b = 0 , 0
10 | m = 2
11 | while (a <= num and b <= 2 * num) or (a <= 2 * num and b <= num):
12 | for n in range(1,m):
13 | a = m ** 2 - n ** 2
14 | b = 2 * m * n
15 | for count in range(1, (min(a,b,num)+1)/2):
16 | sum += 1
17 | triangles.append([ count, min(a,b) - count , max(a,b) , " " , a , b])
18 | for count in range(1, min((max(a,b)+1)/2,min(a,b))+1):
19 | sum += 1
20 | triangles.append([ count, max(a,b) - count , min(a,b) , " " , a , b])
21 | m += 1
22 | return sum
23 |
24 | print get_cubes(6)
25 | print triangles
--------------------------------------------------------------------------------
/107/Euler 107.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
3 |
4 |
5 | class Node():
6 | def __init__(self):
7 | self.next = []
8 |
9 | def add_node(self , next_node):
10 | self.next.append( next_node )
11 |
12 | def get_next(self):
13 | if len(self.next)==0:
14 | pass
15 | else:
16 | return_list=[]
17 | for node in self.next:
18 | return_list.append(node)
19 | return return_list
20 |
21 | def remove_next(self , remove_node):
22 | # doesnt check for instruction validity
23 | self.next.remove(remove_node)
24 |
25 | def get_connections_driver( node_list ):
26 | summer = 0
27 | for node in node_list:
28 | add , visited = get_connections(node , [node_list[0]] )
29 | summer = summer + add
30 | return summer
31 |
32 |
33 | def get_connections(node , visited):
34 | if node in visited:
35 | return 0 , visited
36 | else:
37 | visited.append(node)
38 | mabel = 1
39 | if node.get_next():
40 | for x in node.get_next():
41 | if node.get_next() in visited:
42 | pass
43 | else:
44 | mabel , visited = get_connections( x , visited)
45 | return mabel , visited
46 | else:
47 | return 1 , visited
48 |
49 |
50 | def get_input():
51 | text = open("Euler107.txt" , 'r').read()
52 | mabel = [x.split(",") for x in text.split('\n')]
53 | return mabel
54 |
55 | def find_dist( matrix , dist):
56 | coords = []
57 | #returns x,y of those distances
58 | for x in range(len(matrix)):
59 | for y in range(x,len(matrix)):
60 | if matrix[x][y] == dist:
61 | coords.append([x,y])
62 | return coords
63 |
64 | def main():
65 | distances = []
66 | mabel = get_input()
67 | for row in range(len(mabel)):
68 | for column in range(len(mabel)):
69 | try:
70 | mabel[row][column] = int(mabel[row][column])
71 | if column>row:
72 | distances.append(mabel[row][column])
73 | except:
74 | mabel[row][column] = ""
75 | distances.sort()
76 | print distances
77 | node_list = []
78 | for x in range(len(mabel)):
79 | node_list.append(Node())
80 | conns = 1
81 | dist = distances[0]
82 | print dist
83 |
84 | x = find_dist(mabel,distances[0])
85 | node_list[x[0][0]].add_node(node_list[x[0][1]])
86 |
87 | for length in distances[1:]:
88 | paths = find_dist( mabel , length)
89 | for path in paths:
90 | node_list[path[0]].add_node(node_list[path[1]])
91 | if get_connections_driver(node_list) > conns:
92 | conns = get_connections_driver(node_list)
93 | if conns >= len(mabel):
94 | dist = dist + length
95 |
96 | else:
97 | node_list[path[0]].remove_next(node_list[path[1]])
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 | print main()
106 |
107 |
--------------------------------------------------------------------------------
/107/Euler107.txt:
--------------------------------------------------------------------------------
1 | -,-,-,427,668,495,377,678,-,177,-,-,870,-,869,624,300,609,131,-,251,-,-,-,856,221,514,-,591,762,182,56,-,884,412,273,636,-,-,774
2 | -,-,262,-,-,508,472,799,-,956,578,363,940,143,-,162,122,910,-,729,802,941,922,573,531,539,667,607,-,920,-,-,315,649,937,-,185,102,636,289
3 | -,262,-,-,926,-,958,158,647,47,621,264,81,-,402,813,649,386,252,391,264,637,349,-,-,-,108,-,727,225,578,699,-,898,294,-,575,168,432,833
4 | 427,-,-,-,366,-,-,635,-,32,962,468,893,854,718,427,448,916,258,-,760,909,529,311,404,-,-,588,680,875,-,615,-,409,758,221,-,-,76,257
5 | 668,-,926,366,-,-,-,250,268,-,503,944,-,677,-,727,793,457,981,191,-,-,-,351,969,925,987,328,282,589,-,873,477,-,-,19,450,-,-,-
6 | 495,508,-,-,-,-,-,765,711,819,305,302,926,-,-,582,-,861,-,683,293,-,-,66,-,27,-,-,290,-,786,-,554,817,33,-,54,506,386,381
7 | 377,472,958,-,-,-,-,-,-,120,42,-,134,219,457,639,538,374,-,-,-,966,-,-,-,-,-,449,120,797,358,232,550,-,305,997,662,744,686,239
8 | 678,799,158,635,250,765,-,-,-,35,-,106,385,652,160,-,890,812,605,953,-,-,-,79,-,712,613,312,452,-,978,900,-,901,-,-,225,533,770,722
9 | -,-,647,-,268,711,-,-,-,283,-,172,-,663,236,36,403,286,986,-,-,810,761,574,53,793,-,-,777,330,936,883,286,-,174,-,-,-,828,711
10 | 177,956,47,32,-,819,120,35,283,-,50,-,565,36,767,684,344,489,565,-,-,103,810,463,733,665,494,644,863,25,385,-,342,470,-,-,-,730,582,468
11 | -,578,621,962,503,305,42,-,-,50,-,155,519,-,-,256,990,801,154,53,474,650,402,-,-,-,966,-,-,406,989,772,932,7,-,823,391,-,-,933
12 | -,363,264,468,944,302,-,106,172,-,155,-,-,-,380,438,-,41,266,-,-,104,867,609,-,270,861,-,-,165,-,675,250,686,995,366,191,-,433,-
13 | 870,940,81,893,-,926,134,385,-,565,519,-,-,313,851,-,-,-,248,220,-,826,359,829,-,234,198,145,409,68,359,-,814,218,186,-,-,929,203,-
14 | -,143,-,854,677,-,219,652,663,36,-,-,313,-,132,-,433,598,-,-,168,870,-,-,-,128,437,-,383,364,966,227,-,-,807,993,-,-,526,17
15 | 869,-,402,718,-,-,457,160,236,767,-,380,851,132,-,-,596,903,613,730,-,261,-,142,379,885,89,-,848,258,112,-,900,-,-,818,639,268,600,-
16 | 624,162,813,427,727,582,639,-,36,684,256,438,-,-,-,-,539,379,664,561,542,-,999,585,-,-,321,398,-,-,950,68,193,-,697,-,390,588,848,-
17 | 300,122,649,448,793,-,538,890,403,344,990,-,-,433,596,539,-,-,73,-,318,-,-,500,-,968,-,291,-,-,765,196,504,757,-,542,-,395,227,148
18 | 609,910,386,916,457,861,374,812,286,489,801,41,-,598,903,379,-,-,-,946,136,399,-,941,707,156,757,258,251,-,807,-,-,-,461,501,-,-,616,-
19 | 131,-,252,258,981,-,-,605,986,565,154,266,248,-,613,664,73,-,-,686,-,-,575,627,817,282,-,698,398,222,-,649,-,-,-,-,-,654,-,-
20 | -,729,391,-,191,683,-,953,-,-,53,-,220,-,730,561,-,946,686,-,-,389,729,553,304,703,455,857,260,-,991,182,351,477,867,-,-,889,217,853
21 | 251,802,264,760,-,293,-,-,-,-,474,-,-,168,-,542,318,136,-,-,-,-,392,-,-,-,267,407,27,651,80,927,-,974,977,-,-,457,117,-
22 | -,941,637,909,-,-,966,-,810,103,650,104,826,870,261,-,-,399,-,389,-,-,-,202,-,-,-,-,867,140,403,962,785,-,511,-,1,-,707,-
23 | -,922,349,529,-,-,-,-,761,810,402,867,359,-,-,999,-,-,575,729,392,-,-,388,939,-,959,-,83,463,361,-,-,512,931,-,224,690,369,-
24 | -,573,-,311,351,66,-,79,574,463,-,609,829,-,142,585,500,941,627,553,-,202,388,-,164,829,-,620,523,639,936,-,-,490,-,695,-,505,109,-
25 | 856,531,-,404,969,-,-,-,53,733,-,-,-,-,379,-,-,707,817,304,-,-,939,164,-,-,616,716,728,-,889,349,-,963,150,447,-,292,586,264
26 | 221,539,-,-,925,27,-,712,793,665,-,270,234,128,885,-,968,156,282,703,-,-,-,829,-,-,-,822,-,-,-,736,576,-,697,946,443,-,205,194
27 | 514,667,108,-,987,-,-,613,-,494,966,861,198,437,89,321,-,757,-,455,267,-,959,-,616,-,-,-,349,156,339,-,102,790,359,-,439,938,809,260
28 | -,607,-,588,328,-,449,312,-,644,-,-,145,-,-,398,291,258,698,857,407,-,-,620,716,822,-,-,293,486,943,-,779,-,6,880,116,775,-,947
29 | 591,-,727,680,282,290,120,452,777,863,-,-,409,383,848,-,-,251,398,260,27,867,83,523,728,-,349,293,-,212,684,505,341,384,9,992,507,48,-,-
30 | 762,920,225,875,589,-,797,-,330,25,406,165,68,364,258,-,-,-,222,-,651,140,463,639,-,-,156,486,212,-,-,349,723,-,-,186,-,36,240,752
31 | 182,-,578,-,-,786,358,978,936,385,989,-,359,966,112,950,765,807,-,991,80,403,361,936,889,-,339,943,684,-,-,965,302,676,725,-,327,134,-,147
32 | 56,-,699,615,873,-,232,900,883,-,772,675,-,227,-,68,196,-,649,182,927,962,-,-,349,736,-,-,505,349,965,-,474,178,833,-,-,555,853,-
33 | -,315,-,-,477,554,550,-,286,342,932,250,814,-,900,193,504,-,-,351,-,785,-,-,-,576,102,779,341,723,302,474,-,689,-,-,-,451,-,-
34 | 884,649,898,409,-,817,-,901,-,470,7,686,218,-,-,-,757,-,-,477,974,-,512,490,963,-,790,-,384,-,676,178,689,-,245,596,445,-,-,343
35 | 412,937,294,758,-,33,305,-,174,-,-,995,186,807,-,697,-,461,-,867,977,511,931,-,150,697,359,6,9,-,725,833,-,245,-,949,-,270,-,112
36 | 273,-,-,221,19,-,997,-,-,-,823,366,-,993,818,-,542,501,-,-,-,-,-,695,447,946,-,880,992,186,-,-,-,596,949,-,91,-,768,273
37 | 636,185,575,-,450,54,662,225,-,-,391,191,-,-,639,390,-,-,-,-,-,1,224,-,-,443,439,116,507,-,327,-,-,445,-,91,-,248,-,344
38 | -,102,168,-,-,506,744,533,-,730,-,-,929,-,268,588,395,-,654,889,457,-,690,505,292,-,938,775,48,36,134,555,451,-,270,-,248,-,371,680
39 | -,636,432,76,-,386,686,770,828,582,-,433,203,526,600,848,227,616,-,217,117,707,369,109,586,205,809,-,-,240,-,853,-,-,-,768,-,371,-,540
40 | 774,289,833,257,-,381,239,722,711,468,933,-,-,17,-,-,148,-,-,853,-,-,-,-,264,194,260,947,-,752,147,-,-,343,112,273,344,680,540,-
--------------------------------------------------------------------------------
/107/__init__.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
--------------------------------------------------------------------------------
/109/Euler 109.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
3 |
4 | mabel = 0
5 |
6 | doubles = [ x*2 for x in range(1,21)]
7 | doubles.append(50)
8 | print doubles
9 |
10 | scores = [25,50]
11 | for x in range(1,21):
12 | scores.append(x)
13 | scores.append(x*2)
14 | scores.append(x*3)
15 |
16 |
17 | scores.sort()
18 |
19 | for num in doubles:
20 | if num < 100:
21 | mabel = mabel + 1
22 | for num1 in scores:
23 | score = num + num1
24 | if score < 100:
25 | mabel = mabel + 1
26 | if num + num1 + num1 < 100:
27 | mabel = mabel +.5
28 | for num2 in scores:
29 | score = num + num1 + num2
30 | if score < 100:
31 | mabel = mabel + .5
32 |
33 |
34 |
35 |
36 | print mabel
--------------------------------------------------------------------------------
/109/__init__.py:
--------------------------------------------------------------------------------
1 | __author__ = 'Eddie'
2 |
--------------------------------------------------------------------------------