답안 #27895

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
27895 2017-07-14T11:37:07 Z repeating 동굴 (IOI13_cave) C++11
51 / 100
224 ms 512 KB
#include <bits/stdc++.h>
#include "cave.h"
#define F first
#define Se second
#define P push
#define pb push_back
#define MEM(dp,i) memset(dp,i,sizeof(dp))
#define W while
#define R return
#define C continue
#define SI size()
#define ll long long
#define ld long double
#define pll pair<ll,ll>
#define pii pair<int,int>
#define SF(x) scanf("%I64d",&x)
#define SF2(x,y) scanf("%I64d%I64d",&x,&y)
#define SF3(x,y,z) scanf("%I64d%I64d%I64d",&x,&y,&z)
#define SF4(x,y,z,o) scanf("%I64d%I64d%I64d%I64d",&x,&y,&z,&o)
#define all(v) v.begin(),v.end()

using namespace std;
const long long INF = 1e9;
const int MX=100005;
int s[2005];
int pos[2005];
int a[2005];
int res[2005];
int out[2005];
bool b[2005];
int n;

void check(int x){
    int l=0,r=n,ret1,ret2;
    W(l<r){
        int mid=(l+r)/2;
        ret1=tryCombination(a);
        for(int i=l;i<=mid;i++){
            if(b[i])C;
            a[i]=1;
        }
        ret2=tryCombination(a);
        for(int i=l;i<=mid;i++){
            if(b[i])C;
            a[i]=0;
        }
        if(ret1==ret2||(ret1!=x&&ret2!=x)){
            l=mid+1;
        }
        else{
            r=mid;
        }
    }
    b[l]=1;
    ret1=tryCombination(a);
    if(ret1==x)pos[x]=1;
    else pos[x]=0;
    a[l]=pos[x];
    out[l]=pos[x];
    res[l]=x;
}
void exploreCave(int N) {
    n=N;
    for(int i=0;i<N;i++){
        check(i);
    }
    answer(out,res);
}


# 결과 실행 시간 메모리 Grader output
1 Incorrect 90 ms 512 KB too much calls on tryCombination()
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 224 ms 504 KB too much calls on tryCombination()
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 5 ms 324 KB Output is correct
3 Correct 5 ms 384 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 5 ms 384 KB Output is correct
6 Correct 6 ms 332 KB Output is correct
7 Correct 6 ms 384 KB Output is correct
8 Correct 6 ms 384 KB Output is correct
9 Correct 6 ms 512 KB Output is correct
10 Correct 6 ms 384 KB Output is correct
11 Correct 5 ms 512 KB Output is correct
12 Correct 5 ms 512 KB Output is correct
13 Correct 6 ms 384 KB Output is correct
14 Correct 5 ms 332 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 5 ms 452 KB Output is correct
2 Correct 5 ms 512 KB Output is correct
3 Correct 6 ms 512 KB Output is correct
4 Correct 5 ms 512 KB Output is correct
5 Correct 6 ms 384 KB Output is correct
6 Correct 54 ms 464 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 6 ms 396 KB Output is correct
9 Correct 80 ms 512 KB Output is correct
10 Correct 92 ms 512 KB Output is correct
11 Correct 69 ms 484 KB Output is correct
12 Correct 6 ms 384 KB Output is correct
13 Correct 5 ms 332 KB Output is correct
14 Correct 64 ms 464 KB Output is correct
15 Correct 5 ms 384 KB Output is correct
16 Correct 63 ms 512 KB Output is correct
17 Correct 64 ms 468 KB Output is correct
18 Correct 6 ms 384 KB Output is correct
19 Correct 5 ms 332 KB Output is correct
20 Correct 5 ms 512 KB Output is correct
21 Correct 94 ms 512 KB Output is correct
22 Correct 66 ms 464 KB Output is correct
23 Correct 5 ms 460 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 224 ms 504 KB too much calls on tryCombination()
2 Halted 0 ms 0 KB -