diff --git a/CoinChange.py b/CoinChange.py new file mode 100644 index 0000000..166ab9d --- /dev/null +++ b/CoinChange.py @@ -0,0 +1,18 @@ +import sys +def coinChange(coins, m, V): + table = [0] + # initialize value: + for i in range(V+1): + table.append(sys.maxsize) + + for i in range(1, V+1): + for j in range(m): + coin = coins[j] + if coin <= i: + table[i] = table[i-coin] + 1 if table[i-coin] + 1 < table[i] else table[i] + return table[V] + +if __name__ == '__main__': + V = int(input("Enter value: ")) + coins = list(map(int, input("Enter coins: ").split())) + print(coinChange(coins, len(coins), V)) \ No newline at end of file diff --git a/Sieve_of_erastothenes/sieveOfErastothenes.py b/Sieve_of_erastothenes/sieveOfErastothenes.py new file mode 100644 index 0000000..b8bd203 --- /dev/null +++ b/Sieve_of_erastothenes/sieveOfErastothenes.py @@ -0,0 +1,20 @@ +def getFirstNPrimes(N): + table = [True]*(N+1) + # 0 and 1 are neither prime nor composite: + table[0] = table[1] = False + # 2 is the first prime number + p = 2 + while p*p <= N: + if table[p] == True: + for j in range(p*p, N+1, p): + table[j] = False + p += 1 + + # printing all the prime numbers: + for index, value in enumerate(table): + if value == True: + print(index, end=' ') + +if __name__ == '__main__': + N = int(input("Enter a number: ")) + getFirstNPrimes(N) \ No newline at end of file