### 1. Multiples of 3 and 5

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 1000.

#### Input Format

First line contains T that denotes the number of test cases. This is followed by T lines, each containing an integer, N.

#### Output Format

For each test case, print an integer that denotes the sum of all the multiples of 3 or 5 below N.

- Sample Input 0

1
2
3

2
10
100

- Sample Output 0

1
2

23
2318

1
2
3
4
5
6
7

for _ in range(int(input())):
n =int(input())
n -= 1
a= n//3
b= n//5
c= n//15
print((3*a*(a+1) + 5*b*(b+1) - 15*c*(c+1))>>1)

### 2. Even Fibonacci numbers

Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:

1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …

By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.

#### Input Format

First line contains T that denotes the number of test cases. This is followed by T lines, each containing an integer, N.

#### Output Format

For each test case, print an integer that denotes the sum of all the multiples of 3 or 5 below N.

- Sample Input 0

1
2
3

2
10
100

- Sample Output 0

1
2

10
44

1
2
3
4
5
6
7
8
9

for _ in range(int(input())):
N = int(input())
A, B, C = 1, 2, 3
ans = 2
while C < N:
if not C % 2:
ans += C
A, B, C = B, C, B + C
print(ans)

### 3. Largest prime factor

What is the largest prime factor of a given number ?

#### Input Format

First line contains **T** , the number of test cases. This is followed by **T** lines each containing an integer **N**.

#### Output Format

For each test case, display the largest prime factor of N .

Sample Input

1
2
3

2
10
17

Sample Output

1
2

5
17

1
2
3
4
5
6
7
8
9
10
11
12

for _ in range(int(input())): ## looping for number of test cases
num = int(input())
fact = 2 ## supposing two as the smallest factorial
is_prime = 2 ## Taking two as the smallest prime
while fact * fact <= num : ## Factor is always <= the sqrt of that number
while num % fact == 0:
is_prime = fact
num //= fact
fact += 1 ## Incrementing the factorial by 1
if num > is_prime: ## If the number is itself prime
is_prime = num
print(is_prime)

### 4. Largest palindrome product

A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99. Find the largest palindrome made from the product of two 3-digit numbers.

#### Sample Input

1
2
3

2
101110
800000

#### Sample Output

1
2

101101
793397

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

palindromes = [] ## A list to store all palndromes
for num1 in range(100, 1000): ## starting num 1 from 100
for num2 in range(100000//num1, 1000): ## skipping unnecesarry iteration for num2
palindrome = num1 * num2
if str(palindrome) == str(palindrome)[::-1] and palindrome not in palindromes: ## if the number is palindrome and not in list => append
palindromes.append(palindrome)
palindromes.sort() ## sort the list
length = len(palindromes)
for _ in range(int(input())):
test = int(input())
for num in range(length - 1, -1, -1):
if palindromes[num] < test:
print(palindromes[num])
break

### 5. Smallest multiple

What is the smallest positive number that is evenly divisible(divisible with no remainder) by all of the numbers from to ?

#### Input Format

First line contains that denotes the number of test cases. This is followed by lines, each containing an integer.

1
2

1 <= Test Cases <= 10
1 <= Input <= 40

#### Output Format

Print the required answer for each test case.

Sample Input

1
2
3

2
3
10

Sample Output

1
2

6
2520

1
2
3
4
5

from math import gcd
from functools import reduce
for _ in range(int(input())):
print(reduce(lambda x,y: x*y//gcd(x,y), range(1,int(input())+1)))

### 6. Sum square difference

The sum of the squares of the first ten natural numbers is,

`12 + 22 + ... + 102 = 385`

The square of the sum of the first ten natural numbers is,

`(1 + 2 + ... + 10)2 = 552 = 3025`

Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640.

Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.

ProjectEuler+ Problem Statement

The Project Euler problem is equivalent to the ProjectEuler+ challenge with T = 1 and N = 100.

#### Sample Input

1
2
3

2
3
10

#### Sample Output

1
2

22
2640

1
2
3
4
5
6
7

import sys
for _ in range(int(input())):
n = int(input().strip())
print(pow((((n+1)*n)//2),2) - (n*(n+1)*((2*n)+1))//6)

### 7. 10001st prime

By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13.

What is the 10 001st prime number?

ProjectEuler+ Problem Statement

The Project Euler problem is equivalent to the ProjectEuler+ challenge with T = 1 and N = 10001.

#### Sample Input

1
2
3

2
3
6

#### Sample Output

1
2

5
13

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

from math import floor
def prime(n,l):
x=l[len(l)-1]
while len(l)<n:
x+=2
y=floor(x**0.5)
count=0
for i in l:
if i>y:
count=0
break
if x%i==0:
count=1
break
if count==0:
l.append(x)
return l
l=[2,3]
for i in range(int(input())):
n=int(input())
if len(l)<n:
l=prime(n,l)
print(l[n-1])