diff options
| author | Reiner Herrmann <reiner@reiner-h.de> | 2009-10-19 17:26:46 +0200 |
|---|---|---|
| committer | Reiner Herrmann <reiner@reiner-h.de> | 2014-08-31 20:10:21 +0200 |
| commit | 42a8cd41c17ffeabcb87e008d29fdbd1603a72be (patch) | |
| tree | 66c3208def60707834679365743cc8d1376c1e89 | |
| parent | 5c98788b8dbbf45c2621cc0d712c4053c7e14ac8 (diff) | |
solution for projecteuler problem 35
| -rw-r--r-- | src/projecteuler/035.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/projecteuler/035.py b/src/projecteuler/035.py new file mode 100644 index 0000000..8f00da8 --- /dev/null +++ b/src/projecteuler/035.py @@ -0,0 +1,33 @@ +def circular_prime(number): + global number_list + result = True + number_str = str(number) + for i in range(1, len(number_str)): + rotated_str = number_str[i:] + number_str[:i] + rotated_nr = int(rotated_str) + if not number_list[rotated_nr-1]: + result = False + break + return result + + +limit = 1000000 + +number_list = [False] +for i in range(2, limit+1): + number_list.append(True) + +for i in range(2, limit+1): + x = i*2 + while(x <= len(number_list)): + number_list[x-1] = False + x += i + +count = 0 + +for i in range(1, limit+1): + if number_list[i-1] and circular_prime(i): + count += 1 + +print count + |
