Submission #555348

# Submission time Handle Problem Language Result Execution time Memory
555348 2022-04-30T14:31:12 Z urosk Cave (IOI13_cave) C++14
46 / 100
13 ms 420 KB
#include "cave.h"
#include <bits/stdc++.h>
#define ld double
#define ll int
#define ull unsigned long long
#define llinf 100000000000000000LL // 10^17
#define iinf 2000000000 // 2*10^9
#define pb push_back
#define popb pop_back
#define fi first
#define sc second
#define endl '\n'
#define pii pair<int,int>
#define pll pair<ll,ll>
#define pld pair<ld,ld>
#define sz(a) int(a.size())
#define all(a) a.begin(),a.end()
#define ceri(a,l,r) {for(ll i_ = l;i_<=r;i_++) cerr<<a[i_]<< " ";cerr<<endl;}
using namespace std;
#define maxn 5005
ll n;
ll a[maxn];
ll b[maxn];
ll c[maxn];
bool vis[maxn];
void exploreCave(int N) {
    n = N;
    for(ll i = 0;i<n;i++) b[i] = -1;
    for(ll i = 0;i<n;i++) c[i] = 0;
    ll e = tryCombination(c);
    if(e==-1){
        for(ll i = 0;i<n;i++){
            c[i] = 1;
            int e = tryCombination(c);
            b[i] = e;
            c[i] = 0;
        }
        answer(c,b);
    }
    if(n<=2000){
        while(e!=n){
            for(ll j = 0;j<n;j++){
                if(vis[j]) continue;
                c[j]^=1;
                ll f = tryCombination(c);
                if(f==-1) f = n;
                if(f>e){
                    e = f;
                    vis[j] = 1;
                    break;
                }else if(f<e){
                    vis[j] = 1;
                  b[j] = f;
                }
                c[j]^=1;
            }
        }
        for(ll i = 0;i<n;i++){
          if(b[i]!=-1) continue;
            c[i]^=1;
            int e = tryCombination(c);
            b[i] = e;
            c[i]^=1;
        }
        answer(c,b);
    }
    iota(a,a+n,0);
    for(ll i = 0;i<n;i++){
        c[i] = 1;
        ll e = tryCombination(c);
        if(e==-1) e = n;
        if(e>i) c[i] = 1;
        else c[i] = 0;
    }
    answer(c,a);
}
# Verdict Execution time Memory Grader output
1 Correct 6 ms 340 KB Output is correct
2 Correct 6 ms 340 KB Output is correct
3 Correct 9 ms 420 KB Output is correct
4 Correct 6 ms 340 KB Output is correct
5 Correct 8 ms 412 KB Output is correct
6 Correct 9 ms 420 KB Output is correct
7 Correct 8 ms 420 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 8 ms 340 KB Output is correct
13 Correct 8 ms 420 KB Output is correct
14 Correct 8 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 9 ms 340 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 10 ms 408 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 8 ms 408 KB Output is correct
7 Correct 13 ms 340 KB Output is correct
8 Correct 10 ms 340 KB Output is correct
9 Correct 9 ms 408 KB Output is correct
10 Correct 10 ms 340 KB Output is correct
11 Correct 8 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 0 ms 212 KB Output is correct
14 Correct 0 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 0 ms 212 KB Output is correct
14 Correct 0 ms 212 KB Output is correct
15 Correct 0 ms 212 KB Output is correct
16 Correct 0 ms 212 KB Output is correct
17 Correct 0 ms 212 KB Output is correct
18 Correct 0 ms 212 KB Output is correct
19 Correct 0 ms 212 KB Output is correct
20 Incorrect 2 ms 340 KB too much calls on tryCombination()
21 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 6 ms 340 KB Output is correct
2 Correct 6 ms 340 KB Output is correct
3 Correct 9 ms 420 KB Output is correct
4 Correct 6 ms 340 KB Output is correct
5 Correct 8 ms 412 KB Output is correct
6 Correct 9 ms 420 KB Output is correct
7 Correct 8 ms 420 KB Output is correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 8 ms 340 KB Output is correct
13 Correct 8 ms 420 KB Output is correct
14 Correct 8 ms 340 KB Output is correct
15 Correct 9 ms 340 KB Output is correct
16 Correct 0 ms 212 KB Output is correct
17 Correct 10 ms 408 KB Output is correct
18 Correct 0 ms 212 KB Output is correct
19 Correct 0 ms 212 KB Output is correct
20 Correct 8 ms 408 KB Output is correct
21 Correct 13 ms 340 KB Output is correct
22 Correct 10 ms 340 KB Output is correct
23 Correct 9 ms 408 KB Output is correct
24 Correct 10 ms 340 KB Output is correct
25 Correct 8 ms 340 KB Output is correct
26 Correct 0 ms 212 KB Output is correct
27 Correct 0 ms 212 KB Output is correct
28 Correct 0 ms 212 KB Output is correct
29 Correct 0 ms 212 KB Output is correct
30 Correct 0 ms 212 KB Output is correct
31 Correct 1 ms 212 KB Output is correct
32 Correct 0 ms 212 KB Output is correct
33 Correct 0 ms 212 KB Output is correct
34 Correct 1 ms 212 KB Output is correct
35 Correct 0 ms 212 KB Output is correct
36 Correct 1 ms 212 KB Output is correct
37 Correct 1 ms 212 KB Output is correct
38 Correct 0 ms 212 KB Output is correct
39 Correct 0 ms 212 KB Output is correct
40 Correct 0 ms 212 KB Output is correct
41 Correct 0 ms 212 KB Output is correct
42 Correct 0 ms 212 KB Output is correct
43 Correct 0 ms 212 KB Output is correct
44 Correct 0 ms 212 KB Output is correct
45 Incorrect 2 ms 340 KB too much calls on tryCombination()
46 Halted 0 ms 0 KB -