mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-07-27 10:22:36 +08:00
Project Euler Solutions Added.
This commit is contained in:
12
Project Euler/Problem 01/sol1.py
Normal file
12
Project Euler/Problem 01/sol1.py
Normal file
@ -0,0 +1,12 @@
|
||||
'''
|
||||
Problem Statement:
|
||||
If we list all the natural numbers below 10 that are multiples of 3 or 5,
|
||||
we get 3,5,6 and 9. The sum of these multiples is 23.
|
||||
Find the sum of all the multiples of 3 or 5 below N.
|
||||
'''
|
||||
n = int(raw_input().strip())
|
||||
sum=0;
|
||||
for a in range(3,n):
|
||||
if(a%3==0 or a%5==0):
|
||||
sum+=a
|
||||
print sum;
|
15
Project Euler/Problem 01/sol2.py
Normal file
15
Project Euler/Problem 01/sol2.py
Normal file
@ -0,0 +1,15 @@
|
||||
'''
|
||||
Problem Statement:
|
||||
If we list all the natural numbers below 10 that are multiples of 3 or 5,
|
||||
we get 3,5,6 and 9. The sum of these multiples is 23.
|
||||
Find the sum of all the multiples of 3 or 5 below N.
|
||||
'''
|
||||
n = int(raw_input().strip())
|
||||
sum = 0
|
||||
terms = (n-1)/3
|
||||
sum+= ((terms)*(6+(terms-1)*3))/2 #sum of an A.P.
|
||||
terms = (n-1)/5
|
||||
sum+= ((terms)*(10+(terms-1)*5))/2
|
||||
terms = (n-1)/15
|
||||
sum-= ((terms)*(30+(terms-1)*15))/2
|
||||
print sum
|
42
Project Euler/Problem 01/sol3.py
Normal file
42
Project Euler/Problem 01/sol3.py
Normal file
@ -0,0 +1,42 @@
|
||||
'''
|
||||
Problem Statement:
|
||||
If we list all the natural numbers below 10 that are multiples of 3 or 5,
|
||||
we get 3,5,6 and 9. The sum of these multiples is 23.
|
||||
Find the sum of all the multiples of 3 or 5 below N.
|
||||
'''
|
||||
'''
|
||||
This solution is based on the pattern that the successive numbers in the series follow: 0+3,+2,+1,+3,+1,+2,+3.
|
||||
'''
|
||||
n = int(raw_input().strip())
|
||||
sum=0;
|
||||
num=0;
|
||||
while(1):
|
||||
num+=3
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=2
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=1
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=3
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=1
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=2
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
num+=3
|
||||
if(num>=n):
|
||||
break
|
||||
sum+=num
|
||||
print sum;
|
Reference in New Issue
Block a user