Submission #44694350


Source Code Expand

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

#define x first
#define y second
#define mp(x, y) make_pair(x, y)
#define fro(i, x, y) for(int i = (x);i <= (y);i++)
#define pre(i, x, y) for(int i = (x);i >= (y);i--)

typedef long long ll;
typedef __int128 lll;
typedef unsigned int uint;
typedef pair<int, int> PII;
typedef unsigned long long ull;

const int N = 1000010;
const int mod = 998244353;

int n, m, a[N], ton[N];

signed main()
{
    ios::sync_with_stdio(0), cin.tie(0);
    cin >> n;
    fro(i, 1, n) cin >> a[i];
    sort(a + 1, a + n + 1);
    fro(i, 1, n) ton[a[i]]++;
    int t = a[n];
    fro(i, 1, (t - 1) / 2)
        if(ton[i]) cout << "Impossible\n", exit(0);
    if(t % 2 == 0 && ton[t / 2] != 1)
        cout << "Impossible\n", exit(0);
    if(t % 2 != 0 && ton[t / 2 + 1] != 2)
        cout << "Impossible\n", exit(0);
    fro(i, (t + 1) / 2 + 1, t)
        if(ton[i] < 2) cout << "Impossible\n", exit(0);
    cout << "Possible\n";
    return 0;
}

Submission Info

Submission Time
Task C - Tree Restoring
User win114514
Language C++ (GCC 9.2.1)
Score 700
Code Size 1008 Byte
Status AC
Exec Time 6 ms
Memory 3644 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 700 / 700
Status
AC × 6
AC × 45
Set Name Test Cases
Sample example0, example1, example2, example3, example4, example5
All almostline0, almostline1, almostline2, almostline3, can0, can1, can2, can3, can4, can5, can6, deg0, deg1, deg2, deg3, example0, example1, example2, example3, example4, example5, handmade0, line0, line1, line2, line3, ng10, ng11, ng12, ng13, ng20, ng21, ng22, ng23, plus0, plus1, plus2, plus3, rand0, rand1, rand2, star0, star1, star2, star3
Case Name Status Exec Time Memory
almostline0 AC 6 ms 3584 KiB
almostline1 AC 2 ms 3584 KiB
almostline2 AC 2 ms 3472 KiB
almostline3 AC 2 ms 3528 KiB
can0 AC 2 ms 3584 KiB
can1 AC 2 ms 3472 KiB
can2 AC 2 ms 3448 KiB
can3 AC 2 ms 3600 KiB
can4 AC 2 ms 3488 KiB
can5 AC 2 ms 3532 KiB
can6 AC 2 ms 3536 KiB
deg0 AC 1 ms 3592 KiB
deg1 AC 2 ms 3644 KiB
deg2 AC 2 ms 3516 KiB
deg3 AC 2 ms 3532 KiB
example0 AC 2 ms 3516 KiB
example1 AC 2 ms 3472 KiB
example2 AC 2 ms 3644 KiB
example3 AC 3 ms 3644 KiB
example4 AC 2 ms 3484 KiB
example5 AC 2 ms 3564 KiB
handmade0 AC 2 ms 3488 KiB
line0 AC 2 ms 3488 KiB
line1 AC 2 ms 3536 KiB
line2 AC 2 ms 3488 KiB
line3 AC 2 ms 3608 KiB
ng10 AC 2 ms 3484 KiB
ng11 AC 2 ms 3572 KiB
ng12 AC 2 ms 3564 KiB
ng13 AC 2 ms 3624 KiB
ng20 AC 2 ms 3584 KiB
ng21 AC 2 ms 3444 KiB
ng22 AC 2 ms 3532 KiB
ng23 AC 2 ms 3504 KiB
plus0 AC 2 ms 3472 KiB
plus1 AC 2 ms 3644 KiB
plus2 AC 2 ms 3644 KiB
plus3 AC 2 ms 3504 KiB
rand0 AC 2 ms 3596 KiB
rand1 AC 2 ms 3516 KiB
rand2 AC 2 ms 3532 KiB
star0 AC 2 ms 3596 KiB
star1 AC 2 ms 3596 KiB
star2 AC 2 ms 3476 KiB
star3 AC 2 ms 3572 KiB