Submission #15405

#TimeUsernameProblemLanguageResultExecution timeMemory
15405tonyjjw쿼터너리 컴퓨터 (kriii3_Z)C++98
31 / 126
4000 ms1092 KiB
#include<stdio.h> int n,m; int b[20]; int cmd[420][4]; int ans[420]; int c[20]; int d[20]; void f(int x){ if(x==n){ int i; for(i=0;i<n;i++){ d[i]=c[i]; } for(i=0;i<m;i++){ if(cmd[i][0]==0){ d[cmd[i][1]]=(d[cmd[i][2]]+d[cmd[i][3]])%4; } if(cmd[i][0]==1){ d[cmd[i][1]]=d[cmd[i][2]]^d[cmd[i][3]]; } if(cmd[i][0]==2){ d[cmd[i][1]]=(d[cmd[i][2]]+cmd[i][3])%4; } if(cmd[i][0]==3){ d[cmd[i][1]]=d[cmd[i][2]]^cmd[i][3]; } } for(i=0;i<n;i++){ ans[i]+=d[i]; ans[i]%=4; } } else{ for(c[x]=0;c[x]<4;c[x]++){ if(c[x]==b[x])continue; f(x+1); } } } int main(){ int i,j; scanf("%d%d",&n,&m); for(i=0;i<n;i++){ scanf("%d",&b[i]); } for(i=0;i<m;i++){ scanf("%d%d%d%d",&cmd[i][0],&cmd[i][1],&cmd[i][2],&cmd[i][3]); } f(0); for(i=0;i<n;i++){ printf("%d ",ans[i]%4); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...