結果
問題 | No.2768 Password Crack |
ユーザー | のーと |
提出日時 | 2024-07-17 00:46:47 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 212 ms / 2,000 ms |
コード長 | 682 bytes |
コンパイル時間 | 293 ms |
コンパイル使用メモリ | 82,556 KB |
実行使用メモリ | 94,016 KB |
平均クエリ数 | 804.70 |
最終ジャッジ日時 | 2024-07-17 00:46:58 |
合計ジャッジ時間 | 6,378 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 29 |
ソースコード
#flush=True N=int(input()) D=dict() alp="abcdefghijklmnopqrstuvwxyz" skip=set() ans=["." for i in range(N)] print("?","a"*N,flush=True) cnt_a=int(input()) print("?","b"*N,flush=True) cnt_b=int(input()) letters=set() for i in range(26): print("?",alp[i]*N,flush=True) n=int(input()) if n>0: letters.add(alp[i]) for i in range(26): for j in range(N): if alp[i] not in letters or j in skip: continue if i==0: L=["b" for k in range(N)] else: L=["a" for k in range(N)] L[j]=alp[i] print("?","".join(L),flush=True) n=int(input()) if (i==0 and n==cnt_b+1) or (i>0 and n==cnt_a+1): ans[j]=alp[i] skip.add(j) print("!","".join(ans),flush=True)