社区讨论
样例过了,20分求助
P10724[GESP202406 七级] 区间乘积参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mews28zu
- 此快照首次捕获于
- 2025/08/29 19:56 6 个月前
- 此快照最后确认于
- 2025/11/03 23:42 4 个月前
死因:RE
详见: https://www.luogu.com.cn/record/233755109
CPP详见: https://www.luogu.com.cn/record/233755109
#include<bits/stdc++.h>
using namespace std;
long long n,a[100006];
long long f[3000005];
long long ans;
long long fenjie(long long x){
int res=0;
for(long long i=2;i*i<=x;++i){
while(x%i==0){
res^=1<<i;
x/=i;
}
}
if(x!=1)res^=1<<x;
return res;
}
int main(){
cin>>n;
f[0]=1;
for(int i=1;i<=n;++i){
cin>>a[i];
a[i]=fenjie(a[i]);
a[i]^=a[i-1];
ans+=f[a[i]]++;
}
cout<<ans;
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...