JZOJ 5197. 【NOIP2017提高组模拟7.3】C

时间:2022-12-17 14:17:42

Description

JZOJ 5197. 【NOIP2017提高组模拟7.3】C

Input

JZOJ 5197. 【NOIP2017提高组模拟7.3】C

Output

JZOJ 5197. 【NOIP2017提高组模拟7.3】C

Sample Input

3

Sample Output

1

Data Constraint

JZOJ 5197. 【NOIP2017提高组模拟7.3】C

Solution

  • 这题我的方法是打表找规律,可以发现答案可用枚举偶数和系数推出。

  • 实际上也可以用下式推出答案: Gcd(a,b)aba xor b

Code

#include<cstdio>
using namespace std;
int n,ans;
int main()
{
scanf("%d",&n);
for(int i=3;i<=n;i+=2)
{
int k=n/i;
for(int j=1;j<=k;j++)
{
int p=i*j;
if((p^p-j)==j) ans++;
}
}
printf("%d",ans);
return 0;
}