CSES - KILO 2018 3/5 - Results
Submission details
Task:Detective Debut
Sender:tykkipeli
Submission time:2018-09-20 18:18:00 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.02 sdetails
#2ACCEPTED0.02 sdetails
#3ACCEPTED0.01 sdetails
#4ACCEPTED0.02 sdetails
#5ACCEPTED0.02 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.01 sdetails
#8ACCEPTED0.02 sdetails
#9ACCEPTED0.02 sdetails
#10ACCEPTED0.01 sdetails
#11ACCEPTED0.03 sdetails
#12ACCEPTED0.05 sdetails
#13ACCEPTED0.04 sdetails
#14ACCEPTED0.04 sdetails
#15ACCEPTED0.05 sdetails
#16ACCEPTED0.04 sdetails
#17ACCEPTED0.03 sdetails
#18ACCEPTED0.06 sdetails
#19ACCEPTED0.03 sdetails
#20ACCEPTED0.04 sdetails

Code

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

int n;
int arr[101010];

int main()
{
    cin >> n;
    int x;
    for (int i = 0; i < n; i++) {
        cin >> x;
        arr[x]++;
    }

    if (n == 1) {
        cout << "YES";
        return 0;
    }

    for (int i = 1; i <= n; i++) {
        if (i > 1 && arr[i] == 1) {
            cout << "YES";
            return 0;
        }
        if (arr[i] == i+2) {
            cout << "NO";
            return 0;
        }
    }

    if (arr[0] > 1) {
        cout << "NO";
        return 0;
    }
    if (n == 2) {
        if (arr[1] == 2 || (arr[1] == 1 && arr[0] == 1)) {
            cout << "NO";
            return 0;
        }
    }
    cout << "YES";
}

Test details

Test 1

Verdict: ACCEPTED

input
3
1 1 1

correct output
NO

user output
NO

Test 2

Verdict: ACCEPTED

input
3
1 1 2

correct output
YES

user output
YES

Test 3

Verdict: ACCEPTED

input
3
1 1 0

correct output
YES

user output
YES

Test 4

Verdict: ACCEPTED

input
3
0 0 0

correct output
NO

user output
NO

Test 5

Verdict: ACCEPTED

input
4
1 1 1 0

correct output
NO

user output
NO

Test 6

Verdict: ACCEPTED

input
3
2 0 0

correct output
YES

user output
YES

Test 7

Verdict: ACCEPTED

input
58
4 0 2 1 1 1 0 1 1 4 2 2 2 1 1 ...

correct output
YES

user output
YES

Test 8

Verdict: ACCEPTED

input
210
4 3 4 3 1 2 4 3 2 1 2 3 3 3 3 ...

correct output
NO

user output
NO

Test 9

Verdict: ACCEPTED

input
212
4 0 0 1 1 3 2 2 2 0 0 1 3 1 0 ...

correct output
NO

user output
NO

Test 10

Verdict: ACCEPTED

input
441
0 3 1 6 2 0 2 2 1 2 1 2 2 3 4 ...

correct output
NO

user output
NO

Test 11

Verdict: ACCEPTED

input
84411
0 2 0 0 1 2 0 0 1 1 0 2 0 3 3 ...

correct output
NO

user output
NO

Test 12

Verdict: ACCEPTED

input
87024
87022 87022 87022 87022 87022 ...

correct output
YES

user output
YES

Test 13

Verdict: ACCEPTED

input
72037
4 1 3 1 4 1 1 2 1 2 0 1 2 2 1 ...

correct output
YES

user output
YES

Test 14

Verdict: ACCEPTED

input
57806
652 641 646 643 634 624 672 65...

correct output
YES

user output
YES

Test 15

Verdict: ACCEPTED

input
97305
228 215 181 197 208 208 224 21...

correct output
YES

user output
YES

Test 16

Verdict: ACCEPTED

input
66244
2 0 3 4 1 0 1 3 3 2 0 2 3 2 6 ...

correct output
YES

user output
YES

Test 17

Verdict: ACCEPTED

input
32396
3585 3494 3683 3669 3659 3589 ...

correct output
NO

user output
NO

Test 18

Verdict: ACCEPTED

input
69599
1154 1250 1239 1220 1221 1265 ...

correct output
NO

user output
NO

Test 19

Verdict: ACCEPTED

input
33551
2818 2767 2818 2788 2769 2805 ...

correct output
NO

user output
NO

Test 20

Verdict: ACCEPTED

input
94300
3 2 2 2 2 1 1 0 1 0 2 0 1 0 1 ...

correct output
NO

user output
NO