题目
思路
- 打表找规律
- 枚举小区间
- 对于判断要妥协,我这里选取100内的x, y
cpp
#include <bits/stdc++.h>
using namespace std;
bool st[120];
int main()
{
for(int i = 1; i <= 100; i++)
{
for(int x = 0; x <= 100; x ++)
{
for(int y = 0; y <= 100; y++)
{
if(!st[i])
if(i == x*x - y*y) cout << i << endl, st[i] = true;
}
}
}
return 0;
}
代码
cpp
#include <bits/stdc++.h>
using namespace std;
int k4(int n)
{
return n/4;
}
int odd(int n)
{
return (n+1)/2;
}
int main()
{
int l, r;
cin >> l >> r;
int sum = 0;
sum += odd(r) - odd(l-1) + k4(r) - k4(l-1);
cout << sum;
return 0;
}