├── 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 | 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 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 36 | 37 | 49 | 50 | 51 | true 52 | 53 | 54 | 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 | 88 | 89 | 90 | 91 | 94 | 95 | 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 | 150 | 151 | 171 | 172 | 188 | 189 | 210 | 211 | 229 | 230 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 1420271150686 255 | 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 | 289 | 292 | 293 | 294 | 296 | 297 | 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 | 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 | 5 | -------------------------------------------------------------------------------- /049/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /049/.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 13 | 14 | 15 | 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 | 47 | 48 | 49 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 87 | 88 | 89 | 90 | 93 | 94 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 120 | 123 | 124 | 125 | 126 | 145 | 146 | 161 | 162 | 180 | 181 | 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 | 237 | 238 | 249 | 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 | --------------------------------------------------------------------------------