Submission #1244269


Source Code Expand

#include <bits/stdc++.h>
#define MOD 1000000007
#define SIZE 123456
 
using namespace std;
typedef long long ll;

int N;
int A[SIZE],B[SIZE];
ll ans;

int main(){

cin>>N;
for(int i=0; i<N; i++) scanf("%d",&A[i]);

if(N%2==0){
    for(int i=0; i<N; i++){
        if(A[i]%2==0){
            cout<<0<<endl;
            return 0;
        }else{
            B[A[i]]++;
        }
    }
    for(int i=1; i<N; i++){
        if(i%2==1){
            if(B[i]!=2){
                cout<<0<<endl;
                return 0;
            }
        }
    }
    ans=1LL;
    for(int i=0; i<N/2; i++){
        ans=ans*2%MOD;
    }
    cout<<ans<<endl;
}else{
    for(int i=0; i<N; i++){
        if(A[i]%2==1){
            cout<<0<<endl;
            return 0;
        }else{
            B[A[i]]++;
        }
    }
    for(int i=0; i<N; i++){
        if(i%2==0){
            if(i==0){
                if(B[i]!=1){
                cout<<0<<endl;
                return 0;
                }
            }
            if(i!=0&&B[i]!=2){
                cout<<0<<endl;
                return 0;
            }
        }
    }
    ans=1LL;
    for(int i=0; i<N/2; i++){
        ans=ans*2%MOD;
    }
    cout<<ans<<endl;
}


return 0;
 
}

Submission Info

Submission Time
Task C - Lining Up
User momotaro1303
Language C++14 (GCC 5.4.1)
Score 300
Code Size 1282 Byte
Status AC
Exec Time 12 ms
Memory 1024 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:15:41: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
 for(int i=0; i<N; i++) scanf("%d",&A[i]);
                                         ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 14
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 9 ms 896 KB
subtask_1_invalid_02.txt AC 3 ms 384 KB
subtask_1_max_01.txt AC 11 ms 640 KB
subtask_1_max_02.txt AC 11 ms 640 KB
subtask_1_max_valid_01.txt AC 12 ms 1024 KB
subtask_1_max_valid_02.txt AC 12 ms 1024 KB
subtask_1_min_valid_01.txt AC 1 ms 256 KB
subtask_1_rand_01.txt AC 7 ms 512 KB
subtask_1_rand_02.txt AC 10 ms 640 KB
subtask_1_valid_01.txt AC 7 ms 640 KB
subtask_1_valid_02.txt AC 3 ms 384 KB