답안 #291365

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
291365 2020-09-05T08:03:21 Z khangal 동굴 (IOI13_cave) C++14
0 / 100
40 ms 29440 KB
#include<bits/stdc++.h>
#include "cave.h" 
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
typedef long long ll;
typedef double db;
typedef pair<ll,ll> pl;
typedef vector<ll> vl;
typedef vector<vl> vvl;
#define po pop_back
#define pb push_back
#define mk make_pair
#define mt make_tuple
#define lw lower_bound
#define up upper_bound
#define ff first
#define ss second
#define BOOST ios_base::sync_with_stdio(); cin.tie(0); cout.tie(0);
#define MOD 1000000007
#define MAX 1e18
#define MIN -1e18
#define rep(i,a,b) for(ll i=a;i<=b;i++)
#define per(i,a,b) for(ll i=b;i>=a;i--)
#define con continue
#define freopen freopen("input.txt", "r", stdin);freopen("output.txt", "w", stdout);
#define PI 3.14159265358979323846264338327950288419716939937510582097494459230781640628
#define read(x) scanf("%lld",&x);
#define print(x) printf("%lld ",x);
#define endl '\n';
typedef tree<ll , null_type, less_equal<ll>, rb_tree_tag, tree_order_statistics_node_update> indexed_multi_set;
typedef tree<ll , null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update> indexed_set;
// template< typename T>
// using indexed_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
int n,m,ans,mid,mn,mx,cnt,T,sum,h1,h2,e[1234567],b,c[1234567],d[1<<20],k,i,j,l,r,h,a,w,x,y,z,t;
bool used[1234567];
pair<int,int> p[1234567];
vector<int> v[1234567],vec,vv1,vv2;
// string s1,s;
// int sz[1234567],par[1234567];
int tr[5234567];
ll dx[4]={-1,1,0,0},dy[4]={0,0,-1,1},c1[123][123];
map<ll,ll> mp;
void exploreCave(int N){
    int s[N+1],d[N+1];
    for(int i = 0; i < N; i++){
        int res = tryCombination(s);
        l = 0;
        r = N;
        while(l < r){
            ll mid = (l + r)/2;
            for(int j = l; j <= mid; j++) if(used[j] == 0)s[j] ^= 1;
            int tmp = res;
            res = tryCombination(s);
            if((res == i) ^ (tmp != i)){
                r = mid;
            }
            l = mid+1;
        }
        if(res == i)s[l] ^= 1;
        d[l] = i;
        used[l] = 1;
    }
    answer(s,d);
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 27 ms 29440 KB Answer is wrong
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 40 ms 29440 KB Answer is wrong
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 20 ms 29312 KB Answer is wrong
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 20 ms 29312 KB Answer is wrong
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 27 ms 29440 KB Answer is wrong
2 Halted 0 ms 0 KB -