Submission #1573433


Source Code Expand

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

int a[100005];

int main()
{
    int n;
    scanf("%d",&n);
    for (int i = 0; i < n; i++) scanf("%d",&a[i]);
    sort(a, a + n);

    if (a[0] == a[n - 1])
    {
        if (a[0] == n - 1 || a[0] <= n / 2)
        {
            printf("Yes\n");
        }
        else printf("No\n");
    }
    else if (a[0] + 1 == a[n - 1])
    {
        int lo = upper_bound(a, a + n, a[0]) - a;
        int hi = n - lo;

        // lo만큼은 하나씩만 있고,
        // hi만큼은 2개 이상씩 있다

        if (lo > a[0]) printf("No\n");
        else
        {
            int rem = a[n - 1] - lo;
            if (rem <= hi / 2)
            {
                printf("Yes\n");
            }
            else printf("No\n");
        }
    }
    else
    {
        printf("No\n");
    }
}

Submission Info

Submission Time
Task B - Colorful Hats
User unused
Language C++14 (GCC 5.4.1)
Score 700
Code Size 877 Byte
Status AC
Exec Time 12 ms
Memory 640 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:9:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&n);
                   ^
./Main.cpp:10:50: 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 700 / 700
Status
AC × 6
AC × 24
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 0_05.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
0_03.txt AC 1 ms 256 KB
0_04.txt AC 1 ms 256 KB
0_05.txt AC 1 ms 256 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 9 ms 640 KB
1_03.txt AC 11 ms 640 KB
1_04.txt AC 11 ms 640 KB
1_05.txt AC 11 ms 640 KB
1_06.txt AC 11 ms 640 KB
1_07.txt AC 11 ms 640 KB
1_08.txt AC 9 ms 640 KB
1_09.txt AC 11 ms 640 KB
1_10.txt AC 10 ms 640 KB
1_11.txt AC 11 ms 640 KB
1_12.txt AC 11 ms 640 KB
1_13.txt AC 11 ms 640 KB
1_14.txt AC 11 ms 640 KB
1_15.txt AC 1 ms 256 KB
1_16.txt AC 1 ms 256 KB
1_17.txt AC 12 ms 640 KB