Commit a1b27e17 authored by Samarth Joshi's avatar Samarth Joshi

Updating soln to return list

parent 932a7a51
import functools as ft
import sys
import math
def Fib(n):
primes = range(2, n+1)
uniq = ft.reduce(lambda x,y: x.union(y), map(lambda x: set(range(x*x, n+1, x)), filter(lambda x: x*x<=n, range(2, n+1))), set())
return list(filter(lambda x: x not in uniq, range(2, n+1)))
space = filter(lambda x: x*x<=n, primes)
multiples = map(lambda x: set(range(x*x, n+1, x)), space)
uniq = ft.reduce(lambda x,y: x.union(y), multiples)
actual_primes = filter(lambda x: x not in uniq, primes)
output = ft.reduce(lambda x,y: str(x)+" "+str(y), actual_primes)
print(output + " ")
Fib(int(sys.argv[1]))
\ No newline at end of file
print(Fib(int(sys.argv[1])))
\ No newline at end of file
......@@ -5,6 +5,8 @@ def SieveOfEratosthenes(n):
# Create a boolean array "prime[0..n]" and initialize
# all entries it as true. A value in prime[i] will
# finally be false if i is Not a prime, else true.
if n==0:
return list()
prime = [True] * (n+1)
p = 2
while (p * p <= n):
......@@ -19,11 +21,12 @@ def SieveOfEratosthenes(n):
prime[0]= False
prime[1]= False
# Print all prime numbers
listp = []
for p in range(n + 1):
if prime[p]:
print(str(p) + " ", end=''), #Use print(p) for python 3
listp.append(p), #Use print(p) for python 3
print()
return listp
SieveOfEratosthenes(int(sys.argv[1]))
print(SieveOfEratosthenes(int(sys.argv[1])))
\ No newline at end of file
#!/bin/bash
for i in {10..1000}
for i in {2698..10000}
do
python3 q1.py $i > mine
python3 sieve.py $i > sieves
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment