답안 #291495

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
291495 2020-09-05T12:07:14 Z zoooma13 길고양이 (JOI20_stray) C++14
0 / 100
57 ms 28672 KB
#include <bits/stdc++.h>
#include "Anthony.h"
using namespace std;

#define all(v) v.begin() ,v.end()

namespace{
    vector <vector<pair<int ,int>>> adj;
    vector <int> enc ,seq = {0,0,1,0,1,1};
    void dfs(int u ,int d=0 ,bool bef=0){
        for(auto&e : adj[u]){
            adj[e.first].erase(find(all(adj[e.first]) ,make_pair(u ,e.second)));
            enc[e.second] = (adj[u].size() == 1? seq[d%6] : bef^1);
            dfs(e.first ,d+1 ,enc[e.second]);
        }
    }
}

vector <int> Mark(int N, int M, int A, int B,vector<int> U,vector<int> V){
    assert(M == N-1);
    adj.resize(N);
    enc.resize(M);
    for(int i=0; i<M; i++){
        adj[U[i]].push_back({V[i] ,i});
        adj[V[i]].push_back({U[i] ,i});
    }
    dfs(0);
    return enc;
}

/**
001011
001101
010011
010110
011001
011010
100101
100110
101001
101100
110010
110100
*/
#include <bits/stdc++.h>
#include "Catherine.h"
using namespace std;

namespace{
    int lst;
    vector <int> bef ,seq = {0,0,1,0,1,1};
}

void Init(int A, int B) {  }

int Move(vector<int> y){
    if(y[0] < y[1] && y[0]){
        bef.clear();
        return lst = 0;
    }
    if(y[1] < y[0] && y[1]){
        bef.clear();
        return lst = 1;
    }
    assert(y[0] == y[1] && y[0] <= 1);

    if(bef.size() == 6){
        for(int t=0; t<6; t++){
            if(bef == seq)
                return -1;
            seq.insert(seq.begin() ,seq.back()) ,seq.pop_back();
        }
    }

    if(!y[0] && !y[1]){
        bef.clear();
        return -1;
    }

    bef.push_back(lst^=1);
    return lst;
}
# 결과 실행 시간 메모리 Grader output
1 Runtime error 57 ms 28672 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 57 ms 28672 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 56 ms 24280 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 56 ms 24280 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 3 ms 1292 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 46 ms 19908 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 50 ms 19908 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -