给出一个数N,求1至N中,有多少个数不是2 3 5 7的倍数。 例如N = 10,只有1不是2 3 5 7的倍数。
Input
输入1个数N(1 <= N <= 10^18)。
Output
输出不是2 3 5 7的倍数的数共有多少。
Input示例
10
Output示例
1总数减去是2 3 5 7 倍数的数#include <stdio.h> #include <algorithm> #include <string> #include <iostream> using namespace std; int main( ) { long long int n,t=0; cin>>n; t+=(n/2); t+=(n/3); t+=(n/5); t+=(n/7); t-=(n/(2*3)); t-=(n/(2*5)); t-=(n/(2*7)); t-=(n/(3*5)); t-=(n/(3*7)); t-=(n/(5*7)); t+=(n/(2*3*5)); t+=(n/(2*3*7)); t+=(n/(2*5*7)); t+=(n/(7*3*5)); t-=(n/(2*3*5*7)); cout<<n-t; return 0; }