社区讨论
玄学问题
CF1582F2Korney Korneevich and XOR (hard version)参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @lxwxojod
- 此快照首次捕获于
- 2024/06/27 15:19 2 年前
- 此快照最后确认于
- 2024/06/27 18:49 2 年前
为什么下面的代码,把标有AC的行换成标有RE的行就会RE on test 57?它们不是等价的吗?
CPP#include <bits/stdc++.h>
using namespace std;
const int maxa=8207;
vector<int> f[maxa];
int g[maxa];
bitset<maxa> ans;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
ans[0]=1;
for(int i=0;i<8192;i++) f[i].push_back(0),g[i]=8191;
int n;
cin>>n;
for(int i=1,a;i<=n;i++){
cin>>a;
for(int j=0;j<f[a].size();j++){ //AC
int x=f[a][j]^a; //AC
// for(auto j:f[a]) { //RE
// int x=j^a; //RE
ans[x]=1;
while(g[x]>a) f[--g[x]].push_back(x);
}
f[a].clear();
}
cout<<ans.count()<<'\n';
for(int i=0;i<8192;i++) if(ans[i]) cout<<i<<' ';
cout<<'\n';
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...