QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#85741 | #4820. Kitten's Computer | huzhaoyang | WA | 3ms | 3576kb | C++14 | 1.5kb | 2023-03-08 10:44:12 | 2023-03-08 10:44:15 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
typedef unsigned long long ull;
const int N=405,M=64;
int t[N],A[M],U[M],V[M];ull a[N];
set<pair<int,int> >S;
void SET(int i,int j){
a[i]=a[j],t[i]=t[j]+1;
printf("SET %d %d\n",i,j);
}
void XOR(int i,int j,int k){
a[i]=(a[j]^a[k]),t[i]=max(t[j],t[k])+1;
printf("XOR %d %d %d\n",i,j,k);
}
void AND(int i,int j,int k){
a[i]=(a[j]&a[k]),t[i]=max(t[j],t[k])+1;
printf("AND %d %d %d\n",i,j,k);
}
void LSH(int i,int x){
a[i]<<=x,t[i]++;
printf("LSH %d %d\n",i,x);
}
void RSH(int i,int x){
a[i]>>=x,t[i]++;
printf("RSH %d %d\n",i,x);
}
int main(){
for(int i=0;i<M;i++){
A[i]=i+5;
SET(3,2),LSH(3,M-i-1),RSH(3,M-1);
for(int t=0;t<6;t++)SET(4,3),LSH(3,(1<<t)),XOR(3,3,4);
SET(4,1),LSH(4,i),AND(A[i],3,4);
S.insert(make_pair(t[A[i]],A[i]));
}
while (S.size()>2){
int x=(*S.begin()).second;S.erase(S.begin());
int y=(*S.begin()).second;S.erase(S.begin());
int z=(*S.begin()).second;S.erase(S.begin());
XOR(1,x,y),AND(y,x,y),XOR(x,1,z),AND(1,1,z),XOR(y,1,y),LSH(y,1);
S.insert(make_pair(t[x],x)),S.insert(make_pair(t[y],y));
}
int x=(*S.begin()).second;S.erase(S.begin());
int y=(*S.begin()).second;S.erase(S.begin());
for(int i=0;i<M;i++){
U[i]=(i<<1)+M+5,V[i]=U[i]+1;
AND(U[i],x,y),LSH(U[i],i),XOR(V[i],x,y),LSH(V[i],i);
}
for(int t=0;t<6;t++)
for(int i=M-1;i>=(1<<t);i--)
AND(1,V[i],U[i-(1<<t)]),XOR(U[i],1,U[i]),AND(V[i],V[i],V[i-(1<<t)]);
XOR(1,x,y),XOR(1,1,U[1]);
return 0;
}
详细
Test #1:
score: 0
Wrong Answer
time: 3ms
memory: 3576kb
input:
main
output:
SET 3 2 LSH 3 63 RSH 3 63 SET 4 3 LSH 3 1 XOR 3 3 4 SET 4 3 LSH 3 2 XOR 3 3 4 SET 4 3 LSH 3 4 XOR 3 3 4 SET 4 3 LSH 3 8 XOR 3 3 4 SET 4 3 LSH 3 16 XOR 3 3 4 SET 4 3 LSH 3 32 XOR 3 3 4 SET 4 1 LSH 4 0 AND 5 3 4 SET 3 2 LSH 3 62 RSH 3 63 SET 4 3 LSH 3 1 XOR 3 3 4 SET 4 3 LSH 3 2 XOR 3 3 4 SET 4 3 LSH ...
result:
wrong answer Wrong Answer on test 1: a[1]=2839929338295232408, a[2]=10943642511305433214, but found 9866434942667095248