結果
問題 |
No.2784 繰り上がりなし十進和
|
ユーザー |
![]() |
提出日時 | 2024-06-14 22:38:53 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,235 ms / 2,000 ms |
コード長 | 1,003 bytes |
コンパイル時間 | 269 ms |
コンパイル使用メモリ | 82,424 KB |
実行使用メモリ | 265,788 KB |
最終ジャッジ日時 | 2024-06-14 22:39:25 |
合計ジャッジ時間 | 27,554 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 36 |
ソースコード
def F(a,b,c,d,e,f): a %= 10 b %= 10 c %= 10 d %= 10 e %= 10 f %= 10 return 100000*a + 10000*b + 1000*c + 100*d + 10*e + f N = 10**6 + 1 SS = [input() for i in range(6)] S = [[int(SS[j][i]) for i in range(6)] for j in range(6)] A = [] G = [[] for i in range(N+1)] X = set() for j in range(6): a,b,c,d,e,f = S[j] t = F(a,b,c,d,e,f) G[N].append(t) X.add(t) continue for a in range(10): for b in range(10): for c in range(10): for d in range(10): for e in range(10): for f in range(10): t = F(a,b,c,d,e,f) for j in range(6): tt = F(a+S[j][0],b+S[j][1],c+S[j][2],d+S[j][3],e+S[j][4],f+S[j][5]) if tt in X: continue if t == tt: continue G[t].append(tt) seen = [0 for i in range(N)] todo = [N] ans = 0 while len(todo): u = todo.pop() for v in G[u]: if seen[v]: continue seen[v] = 1 ans += 1 todo.append(v) print(ans)