Submission #1220704
Source Code Expand
#include <iostream> #include <vector> #include <algorithm> using namespace std; // template for creating 2d vector template<typename T> vector<vector<T>> make_2d_vector(size_t rows, size_t cols, T init) { return vector< vector<T> >(rows, vector<T>(cols, init)); } #define debug(x) cout << #x << "==" << x << endl; const int inf = 1e+8; const int mod = 1e+9 + 7; typedef long long ll; // a^b ll pow(ll a, int b){ int ret = 1; while(b){ if(b & 1) ret = (1ll) * ret * a % mod; b >>= 1; a = (1ll) * a * a % mod; } return ret; } int main() { ios::sync_with_stdio(false); int N; cin >> N; vector<int> a(N); for(int i = 0; i < N; i++) { cin >> a[i]; } sort(a.begin(), a.end()); bool ok = true; if( N % 2 == 0 ) { int n = 1; for(int i = 0; i < N; i += 2) { if( a[i] == n and a[i+1] == n ) { n += 2; } else { ok = false; break; } } } else { if( a[0] != 0 ) { ok = false; } else { int n = 2; for(int i = 1; i < N; i += 2 ) { if( a[i] == n and a[i+1] == n ) { n += 2; } else { ok = false; break; } } } } if( not ok ) { cout << 0 << "\n"; } else { cout << pow(2, N / 2) << "\n"; } return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Lining Up |
User | sadtomato |
Language | C++14 (GCC 5.4.1) |
Score | 300 |
Code Size | 1387 Byte |
Status | AC |
Exec Time | 15 ms |
Memory | 640 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 | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask_1_invalid_01.txt | AC | 13 ms | 640 KB |
subtask_1_invalid_02.txt | AC | 4 ms | 384 KB |
subtask_1_max_01.txt | AC | 15 ms | 640 KB |
subtask_1_max_02.txt | AC | 15 ms | 640 KB |
subtask_1_max_valid_01.txt | AC | 15 ms | 640 KB |
subtask_1_max_valid_02.txt | AC | 15 ms | 640 KB |
subtask_1_min_valid_01.txt | AC | 1 ms | 256 KB |
subtask_1_rand_01.txt | AC | 10 ms | 512 KB |
subtask_1_rand_02.txt | AC | 14 ms | 640 KB |
subtask_1_valid_01.txt | AC | 9 ms | 512 KB |
subtask_1_valid_02.txt | AC | 4 ms | 384 KB |