B - FizzBuzz Sum Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 200

問題文

FizzBuzz列 a_1,a_2,... を次のように定めます。

  • i3 でも 5 でも割り切れるなら、a_i=\text{FizzBuzz}
  • そうではなく i3 で割り切れるなら、a_i=\text{Fizz}
  • そうではなく i5 で割り切れるなら、a_i=\text{Buzz}
  • そうではないなら、a_i=i

FizzBuzz列の N 項目までに含まれる数の和を求めてください。

制約

  • 1 \leq N \leq 10^6

入力

入力は以下の形式で標準入力から与えられる。

N

出力

FizzBuzz列の N 項目までに含まれる数の和を出力せよ。


入力例 1

15

出力例 1

60

FizzBuzz列の 15 項目までは次の通りです。

1,2,\text{Fizz},4,\text{Buzz},\text{Fizz},7,8,\text{Fizz},\text{Buzz},11,\text{Fizz},13,14,\text{FizzBuzz}

15 項目までには 1,2,4,7,8,11,13,14 が含まれ、これらの和は 60 です。


入力例 2

1000000

出力例 2

266666333332

オーバーフローに注意してください。

Score : 200 points

Problem Statement

Let us define the FizzBuzz sequence a_1,a_2,... as follows:

  • If both 3 and 5 divides i, a_i=\text{FizzBuzz}.
  • If the above does not hold but 3 divides i, a_i=\text{Fizz}.
  • If none of the above holds but 5 divides i, a_i=\text{Buzz}.
  • If none of the above holds, a_i=i.

Find the sum of all numbers among the first N terms of the FizzBuzz sequence.

Constraints

  • 1 \leq N \leq 10^6

Input

Input is given from Standard Input in the following format:

N

Output

Print the sum of all numbers among the first N terms of the FizzBuzz sequence.


Sample Input 1

15

Sample Output 1

60

The first 15 terms of the FizzBuzz sequence are:

1,2,\text{Fizz},4,\text{Buzz},\text{Fizz},7,8,\text{Fizz},\text{Buzz},11,\text{Fizz},13,14,\text{FizzBuzz}

Among them, numbers are 1,2,4,7,8,11,13,14, and the sum of them is 60.


Sample Input 2

1000000

Sample Output 2

266666333332

Watch out for overflow.