Project Euler #1: Multiples of 3 and 5

时间:2023-01-27 17:02:43

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.

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

Constraints
1T105
1N109

Sample Input

2
10
100

Sample Output

23
2318 

Language: C

1
#include <stdio.h>
2
#include <stdlib.h>
3
4
int main()
5
{
6
    unsigned long long int N,i,j,x,y,z;
7
    int T;
8
    scanf("%d",&T);
9
    unsigned long long int n[T];
10
    for(i=1;i<=T;i++)
11
    {
12
        scanf("%llu",&N);
13
        x=(N-1)/3;
14
        y=(N-1)/5;
15
        z=y/3;
16
        n[i-1]=(3+3*x)*x/2;
17
        n[i-1]+=(5+5*y)*y/2;
18
        n[i-1]-=(15+15*z)*z/2;
19
    }
20
    for(i=1;i<=T;i++)
21
    {
22
        printf("%llu\n",n[i-1]);
23
    }
24
    return 0;
25
}