답안 #164564

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
164564 2019-11-21T13:55:03 Z NachoLibre Vision Program (IOI19_vision) C++14
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>
using namespace std;
#include "vision.h"

int h, w, c0, c1, d;

int pti(int i, int j) {
    return w * i + j;
}

vector<int> md (int i, int d, int D) {
    /* 0 - /
       1 - \ */
    vector<int> v;
    v.push_back(D);
    int j;
    if (d) {
        j = h - 1;
        if(i >= w) {
            j -= i - w + 1;
            i = w - 1;
        }
    } else {
        j = 0;
        if(i >= w) {
            j += i - w + 1;
            i = w - 1;
        }
    }
    while (i >= 0 && j >= 0 && j < h) {
        if (d) --j;
        else ++j;
        --i;
        v.push_back (pti(i, j));
    }
    return v;
}

int amatmata (int k) {
    vector<int> v;
    d = add_or({c0});
    for(int i = 0; i < w + h - 1; ++i) {
        d = add_or (md (i - k, 0, d));
        v.push_back (add_and (md (i, 0, d)));
    }
    d = add_or({c0});
    for(int i = 0; i < w + h - 1; ++i) {
        d = add_or(md (i - k, 1, d));
        v.push_back(add_and (md (i, 1, d)));
    }
    return add_or(v);
}

void contruct_network (int H, int W, int K) {
    if (H * W == 2) {
        add_or ({0});
        return;
    }
    c0 = add_and ({0, 1, 2});
    c1 = add_not (c0);
    h = H;
    w = W;
    add_and({amatmata (K), add_not (amatmata (K + 1))});
}

Compilation message

/tmp/ccSVw9Qs.o: In function `main':
grader.cpp:(.text.startup+0x19b): undefined reference to `construct_network(int, int, int)'
collect2: error: ld returned 1 exit status