Submission #66610919
Source Code Expand
""" <方針> - 円周上で三角形が正三角形になるときは、`+L//3` ずつしたところを確認すれば良い。 - また、`L%3 == 0` の時だけ正三角形が存在しうる。 - 最初の点は、`0~L//3` だけ確認すれば良い。 - 計算時間は `O(N+L)` になるはず。 """ # 入力 N, L = map(int, input().split()) D = list(map(int, input().split())) # 正三角形を生成できないとき if(L%3 != 0): print(0) exit() # 円周上に点を置く ind = 0 C = [0]*L C[0] += 1 for d in D: ind += d ind %= L C[ind] += 1 # カウントをする ans = 0 # L//3だけ見れば良い for i in range(L//3): X = C[i+0*L//3] Y = C[i+1*L//3] Z = C[i+2*L//3] ans += X*Y*Z # 出力 print(ans)
Submission Info
| Submission Time | |
|---|---|
| Task | C - Equilateral Triangle |
| User | mattsunkun |
| Language | Python (PyPy 3.10-v7.3.12) |
| Score | 300 |
| Code Size | 777 Byte |
| Status | AC |
| Exec Time | 103 ms |
| Memory | 134308 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 300 / 300 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 56 ms | 76552 KiB |
| 00_sample_01.txt | AC | 56 ms | 76332 KiB |
| 00_sample_02.txt | AC | 56 ms | 76348 KiB |
| 01_test_00.txt | AC | 56 ms | 76284 KiB |
| 01_test_01.txt | AC | 61 ms | 81436 KiB |
| 01_test_02.txt | AC | 73 ms | 97804 KiB |
| 01_test_03.txt | AC | 94 ms | 128992 KiB |
| 01_test_04.txt | AC | 61 ms | 81180 KiB |
| 01_test_05.txt | AC | 63 ms | 82016 KiB |
| 01_test_06.txt | AC | 89 ms | 116044 KiB |
| 01_test_07.txt | AC | 94 ms | 130100 KiB |
| 01_test_08.txt | AC | 59 ms | 82444 KiB |
| 01_test_09.txt | AC | 61 ms | 82804 KiB |
| 01_test_10.txt | AC | 87 ms | 118248 KiB |
| 01_test_11.txt | AC | 97 ms | 132880 KiB |
| 01_test_12.txt | AC | 61 ms | 83088 KiB |
| 01_test_13.txt | AC | 63 ms | 84048 KiB |
| 01_test_14.txt | AC | 79 ms | 102448 KiB |
| 01_test_15.txt | AC | 103 ms | 134308 KiB |
| 01_test_16.txt | AC | 58 ms | 76332 KiB |
| 01_test_17.txt | AC | 61 ms | 80496 KiB |
| 01_test_18.txt | AC | 79 ms | 107152 KiB |
| 01_test_19.txt | AC | 92 ms | 130752 KiB |
| 01_test_20.txt | AC | 89 ms | 125984 KiB |
| 01_test_21.txt | AC | 89 ms | 125812 KiB |
| 01_test_22.txt | AC | 89 ms | 125924 KiB |
| 01_test_23.txt | AC | 89 ms | 125892 KiB |
| 01_test_24.txt | AC | 92 ms | 125904 KiB |
| 01_test_25.txt | AC | 92 ms | 125868 KiB |
| 01_test_26.txt | AC | 99 ms | 129212 KiB |
| 01_test_27.txt | AC | 95 ms | 130820 KiB |
| 01_test_28.txt | AC | 89 ms | 125580 KiB |
| 01_test_29.txt | AC | 89 ms | 126072 KiB |
| 01_test_30.txt | AC | 86 ms | 127612 KiB |
| 01_test_31.txt | AC | 85 ms | 127584 KiB |
| 01_test_32.txt | AC | 84 ms | 127404 KiB |
| 01_test_33.txt | AC | 56 ms | 76288 KiB |