【题目分析】
a^b>=a-b>=gcd(a,b)
【代码】
#include <cstdio>
#define ll long long
ll cnt[30000001];
int tt,x,kase=0;
int main()
{
for (int i=1;i<=30000000;++i)
for (int j=i*2;j<=30000000;j+=i)
if ((j^i)==j-i) cnt[j]++;
for (int i=1;i<=30000000;++i)
cnt[i]+=cnt[i-1];
scanf("%d",&tt);
while (tt--)
{
scanf("%d",&x);
printf("Case %d: %lld\n",++kase,cnt[x]);
}
}
本文解析了一道数学算法竞赛题目,通过使用特定的数学运算来筛选符合条件的整数对,并利用预处理技巧优化了求解过程。代码实现了一个高效的算法,能够快速计算出在一定范围内满足特定条件的整数对的数量。
573

被折叠的 条评论
为什么被折叠?



