Submission #8000705
Source Code Expand
N = int(input()) A = [int(i) for i in input().split()] mod = 10**9+7 #並びが可能なら、2**(N//2) #無理なら0 opt = {} for i in range(N): a = abs((N-i-1)-i) if a not in opt : opt[a] = 1 else : opt[a] += 1 for i in range(N): if A[i] not in opt or opt[A[i]] == 0 : print(0) exit() else: opt[A[i]] -= 1 ans = (2**(N//2))%mod print(ans)
Submission Info
Submission Time | |
---|---|
Task | C - Lining Up |
User | minase_1224 |
Language | Python (3.4.3) |
Score | 300 |
Code Size | 392 Byte |
Status | AC |
Exec Time | 137 ms |
Memory | 14688 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_invalid_01.txt, subtask_1_invalid_02.txt, subtask_1_max_01.txt, subtask_1_max_02.txt, subtask_1_max_valid_01.txt, subtask_1_max_valid_02.txt, subtask_1_min_valid_01.txt, subtask_1_rand_01.txt, subtask_1_rand_02.txt, subtask_1_valid_01.txt, subtask_1_valid_02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 17 ms | 3064 KB |
sample_02.txt | AC | 17 ms | 3064 KB |
sample_03.txt | AC | 17 ms | 3064 KB |
subtask_1_invalid_01.txt | AC | 116 ms | 12172 KB |
subtask_1_invalid_02.txt | AC | 33 ms | 4852 KB |
subtask_1_max_01.txt | AC | 84 ms | 13880 KB |
subtask_1_max_02.txt | AC | 84 ms | 14680 KB |
subtask_1_max_valid_01.txt | AC | 137 ms | 14688 KB |
subtask_1_max_valid_02.txt | AC | 126 ms | 13880 KB |
subtask_1_min_valid_01.txt | AC | 17 ms | 3064 KB |
subtask_1_rand_01.txt | AC | 58 ms | 9996 KB |
subtask_1_rand_02.txt | AC | 78 ms | 13344 KB |
subtask_1_valid_01.txt | AC | 80 ms | 8984 KB |
subtask_1_valid_02.txt | AC | 39 ms | 5360 KB |