Submission #142583
Source Code Expand
#include "grader.h" #include "honest.h" #include <cstdio> #include <vector> using namespace std; #define rep(i,n) for(int i=0;i<(n);i++) #define reg(i,a,b) for(int i=(a);i<=(b);i++) vector<int> dat[100005]; vector<int> ok; int gone[100005]={}; /* int question(int a,int b,int c){ if(a==1)printf("to..%d is..%d?\n",b,c); else printf("to..%d how?\n",b); scanf("%d",&a); return a; } void answer(int p,int q){ printf("%d..%s\n",p,q==1?"honest":"liar"); } void impossible(){printf("impossible\n");} */ void identify(int N){ int isnone=0; rep(i,N){ int a=question(2,i,0); if(a==0)isnone=1; if(1<=a && a<=N)dat[a].push_back(i); } reg(i,1,N){ if(dat[i].size()==i)ok.push_back(i); } int hone=-1; if(ok.size()==1){ if(isnone==1)hone=ok[0]; else{ impossible(); return; } } else if(ok.size()==2){ impossible(); return; } else{ int ok0=dat[ok[0]][0], ok1=dat[ok[1]][0]; if(question(1,ok0,ok1)==0){//0!=1 if(question(1,ok0,dat[ok[2]][0])==0){//0!=2 hone=ok[0]; } else{ hone=ok[1]; } } else{//0==1 reg(i,2,ok.size()-1){ int okto=dat[ok[i]][0]; if(question(1,ok0,okto)==0){//0!=i hone=ok[i]; break; } } } } //printf("hone..%d\n",hone); rep(i,dat[hone].size()){ int no=dat[hone][i]; answer(no,1); gone[no]=1; } rep(i,N){ if(gone[i]==0)answer(i,0); } return; }
Submission Info
Submission Time | |
---|---|
Task | C - しょうじききつね と うそつきにんげん (Honest Fox and Dishonest Man) |
User | satos |
Language | IOI-Style C++ (GCC 5.4.1) |
Score | 0 |
Code Size | 1515 Byte |
Status | WA |
Exec Time | 177 ms |
Memory | 20496 KB |
Judge Result
Set Name | Subtask1 | Subtask2 | Subtask3 | Subtask4 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 16 | 0 / 29 | 0 / 17 | 0 / 38 | ||||||||||||||||||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Subtask1 | subtask0/1, subtask0/10, subtask0/11, subtask0/12, subtask0/13, subtask0/14, subtask0/15, subtask0/16, subtask0/17, subtask0/2, subtask0/3, subtask0/4, subtask0/5, subtask0/6, subtask0/7, subtask0/8, subtask0/9, subtask1/1, subtask1/10, subtask1/11, subtask1/12, subtask1/13, subtask1/14, subtask1/15, subtask1/16, subtask1/2, subtask1/3, subtask1/4, subtask1/5, subtask1/6, subtask1/7, subtask1/8, subtask1/9 |
Subtask2 | subtask0/1, subtask0/10, subtask0/11, subtask0/12, subtask0/13, subtask0/14, subtask0/15, subtask0/16, subtask0/17, subtask0/2, subtask0/3, subtask0/4, subtask0/5, subtask0/6, subtask0/7, subtask0/8, subtask0/9, subtask2/1, subtask2/10, subtask2/11, subtask2/12, subtask2/13, subtask2/14, subtask2/15, subtask2/16, subtask2/17, subtask2/18, subtask2/19, subtask2/2, subtask2/20, subtask2/3, subtask2/4, subtask2/5, subtask2/6, subtask2/7, subtask2/8, subtask2/9 |
Subtask3 | subtask0/1, subtask0/10, subtask0/11, subtask0/12, subtask0/13, subtask0/14, subtask0/15, subtask0/16, subtask0/17, subtask0/2, subtask0/3, subtask0/4, subtask0/5, subtask0/6, subtask0/7, subtask0/8, subtask0/9, subtask34/1, subtask34/10, subtask34/11, subtask34/12, subtask34/13, subtask34/14, subtask34/15, subtask34/16, subtask34/17, subtask34/18, subtask34/19, subtask34/2, subtask34/20, subtask34/21, subtask34/22, subtask34/23, subtask34/24, subtask34/25, subtask34/26, subtask34/27, subtask34/28, subtask34/29, subtask34/3, subtask34/30, subtask34/4, subtask34/5, subtask34/6, subtask34/7, subtask34/8, subtask34/9 |
Subtask4 | subtask0/1, subtask0/10, subtask0/11, subtask0/12, subtask0/13, subtask0/14, subtask0/15, subtask0/16, subtask0/17, subtask0/2, subtask0/3, subtask0/4, subtask0/5, subtask0/6, subtask0/7, subtask0/8, subtask0/9, subtask34/1, subtask34/10, subtask34/11, subtask34/12, subtask34/13, subtask34/14, subtask34/15, subtask34/16, subtask34/17, subtask34/18, subtask34/19, subtask34/2, subtask34/20, subtask34/21, subtask34/22, subtask34/23, subtask34/24, subtask34/25, subtask34/26, subtask34/27, subtask34/28, subtask34/29, subtask34/3, subtask34/30, subtask34/4, subtask34/5, subtask34/6, subtask34/7, subtask34/8, subtask34/9 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0/1 | AC | 68 ms | 17424 KB |
subtask0/10 | AC | 66 ms | 17428 KB |
subtask0/11 | AC | 66 ms | 17428 KB |
subtask0/12 | AC | 65 ms | 17468 KB |
subtask0/13 | WA | 70 ms | 17272 KB |
subtask0/14 | RE | 173 ms | 17408 KB |
subtask0/15 | WA | 67 ms | 17408 KB |
subtask0/16 | AC | 67 ms | 17424 KB |
subtask0/17 | WA | 66 ms | 17400 KB |
subtask0/2 | AC | 66 ms | 17396 KB |
subtask0/3 | AC | 66 ms | 17424 KB |
subtask0/4 | WA | 67 ms | 17416 KB |
subtask0/5 | AC | 64 ms | 17400 KB |
subtask0/6 | WA | 67 ms | 17424 KB |
subtask0/7 | AC | 65 ms | 17428 KB |
subtask0/8 | AC | 67 ms | 17416 KB |
subtask0/9 | AC | 64 ms | 17416 KB |
subtask1/1 | RE | 174 ms | 17488 KB |
subtask1/10 | WA | 66 ms | 17420 KB |
subtask1/11 | AC | 66 ms | 17424 KB |
subtask1/12 | WA | 66 ms | 17428 KB |
subtask1/13 | WA | 65 ms | 17420 KB |
subtask1/14 | WA | 67 ms | 17404 KB |
subtask1/15 | AC | 64 ms | 17408 KB |
subtask1/16 | AC | 64 ms | 17404 KB |
subtask1/2 | AC | 65 ms | 17420 KB |
subtask1/3 | WA | 67 ms | 17408 KB |
subtask1/4 | WA | 67 ms | 17404 KB |
subtask1/5 | AC | 66 ms | 17412 KB |
subtask1/6 | AC | 68 ms | 17408 KB |
subtask1/7 | AC | 64 ms | 17424 KB |
subtask1/8 | WA | 63 ms | 17412 KB |
subtask1/9 | AC | 66 ms | 17424 KB |
subtask2/1 | RE | 177 ms | 17420 KB |
subtask2/10 | AC | 69 ms | 17424 KB |
subtask2/11 | AC | 73 ms | 17472 KB |
subtask2/12 | WA | 72 ms | 17424 KB |
subtask2/13 | AC | 73 ms | 17424 KB |
subtask2/14 | WA | 71 ms | 17416 KB |
subtask2/15 | WA | 72 ms | 17420 KB |
subtask2/16 | AC | 72 ms | 17420 KB |
subtask2/17 | AC | 68 ms | 17428 KB |
subtask2/18 | WA | 70 ms | 17416 KB |
subtask2/19 | WA | 70 ms | 17420 KB |
subtask2/2 | AC | 66 ms | 17420 KB |
subtask2/20 | AC | 70 ms | 17420 KB |
subtask2/3 | WA | 65 ms | 17400 KB |
subtask2/4 | WA | 70 ms | 17420 KB |
subtask2/5 | AC | 72 ms | 17424 KB |
subtask2/6 | AC | 69 ms | 17428 KB |
subtask2/7 | AC | 72 ms | 17432 KB |
subtask2/8 | AC | 71 ms | 17400 KB |
subtask2/9 | AC | 68 ms | 17424 KB |
subtask34/1 | WA | 159 ms | 20152 KB |
subtask34/10 | AC | 148 ms | 19344 KB |
subtask34/11 | AC | 151 ms | 18944 KB |
subtask34/12 | AC | 151 ms | 19220 KB |
subtask34/13 | AC | 151 ms | 19344 KB |
subtask34/14 | AC | 148 ms | 19344 KB |
subtask34/15 | AC | 150 ms | 18956 KB |
subtask34/16 | AC | 150 ms | 19336 KB |
subtask34/17 | WA | 143 ms | 18888 KB |
subtask34/18 | AC | 137 ms | 18816 KB |
subtask34/19 | WA | 139 ms | 18964 KB |
subtask34/2 | WA | 155 ms | 20236 KB |
subtask34/20 | WA | 137 ms | 18828 KB |
subtask34/21 | AC | 152 ms | 18828 KB |
subtask34/22 | AC | 158 ms | 19208 KB |
subtask34/23 | AC | 155 ms | 19208 KB |
subtask34/24 | AC | 137 ms | 18828 KB |
subtask34/25 | AC | 131 ms | 18832 KB |
subtask34/26 | WA | 135 ms | 18812 KB |
subtask34/27 | WA | 132 ms | 18824 KB |
subtask34/28 | AC | 160 ms | 19156 KB |
subtask34/29 | AC | 158 ms | 19204 KB |
subtask34/3 | AC | 166 ms | 20496 KB |
subtask34/30 | AC | 151 ms | 18828 KB |
subtask34/4 | WA | 138 ms | 19208 KB |
subtask34/5 | WA | 134 ms | 18836 KB |
subtask34/6 | AC | 134 ms | 18828 KB |
subtask34/7 | AC | 146 ms | 18960 KB |
subtask34/8 | AC | 150 ms | 18956 KB |
subtask34/9 | AC | 154 ms | 19296 KB |