답안 #793985

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
793985 2023-07-26T08:28:10 Z fatemetmhr 자동 인형 (IOI18_doll) C++17
47 / 100
124 ms 74608 KB
#include "doll.h"
#include <bits/stdc++.h>

using namespace std;

#define all(x) x.begin(), x.end()
#define mp     make_pair
#define fi     first
#define se     second
#define pb     push_back

typedef long long ll;

const int maxn5 = 1e6 + 10;

int newnode = 0;
vector <int> c, x, y;
vector <pair<int, int>> av[maxn5];

int build(int n){
    int rt = newnode++;
    x.pb(0);
    y.pb(0);
    if(n == 2){
        av[rt].pb({rt, 0});
        av[rt].pb({rt, 1});
        return rt;
    }
    int a = (n / 2);
    if(n & 1)
        a++;
    int r1 = build(a), r2 = build(a);
    x[rt] = -(r1 + 1);
    y[rt] = -(r2 + 1);
    //cout << "building " << n << ' ' << rt << ' ' << r1 << ' ' << r2 << endl;
    for(int i = 0; i < a; i++){
        if(n % 2 && i == a - 1){
            if(av[r1][i].se)
                y[av[r1][i].fi] = -(rt + 1);
            else
                x[av[r1][i].fi] = -(rt + 1);
        }
        else
            av[rt].pb(av[r1][i]);
        av[rt].pb(av[r2][i]);
    }
    /*
    for(auto [u, v] : av[rt])
        cout << u << ' ' << v << endl;
    cout << "done " << x[rt] << ' ' << y[rt] << endl;
    //*/
    return rt;
}


void create_circuit(int m, std::vector<int> a) {
    int n = a.size();
    if(n == 1){
        c.pb(a[0]);
        for(int i = 0; i < m; i++)
            c.pb(0);
        answer(c, x, y);
    }
    build(n);
    c.pb(a[0]);
    for(int i = 0; i < m; i++)
        c.pb(-1);
    a.pb(0);
    for(int i = 0; i < n; i++){
        if(av[0][i].se)
            y[av[0][i].fi] = a[i + 1];
        else
            x[av[0][i].fi] = a[i + 1];
    }
    answer(c, x, y);
    /*
    for(auto u : c)
        cout << u << ' ';
    cout << endl;
    for(int i = 0; i < x.size(); i++)
        cout << x[i] << ' ' << y[i] << endl;
    //*/
    return;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 12 ms 23764 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 12 ms 23764 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 12 ms 23764 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 14 ms 23668 KB Output is correct
2 Correct 12 ms 23764 KB Output is correct
3 Correct 12 ms 23784 KB Output is correct
4 Correct 13 ms 23704 KB Output is correct
5 Correct 12 ms 23784 KB Output is correct
6 Correct 12 ms 23688 KB Output is correct
7 Correct 12 ms 23716 KB Output is correct
8 Correct 14 ms 23772 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 12 ms 23764 KB Output is partially correct
2 Correct 65 ms 49292 KB Output is correct
3 Partially correct 107 ms 69520 KB Output is partially correct
4 Partially correct 120 ms 73408 KB Output is partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 12 ms 23764 KB Output is partially correct
2 Correct 65 ms 49292 KB Output is correct
3 Partially correct 107 ms 69520 KB Output is partially correct
4 Partially correct 120 ms 73408 KB Output is partially correct
5 Partially correct 116 ms 74608 KB Output is partially correct
6 Partially correct 116 ms 74116 KB Output is partially correct
7 Partially correct 119 ms 74248 KB Output is partially correct
8 Partially correct 121 ms 73996 KB Output is partially correct
9 Partially correct 105 ms 69552 KB Output is partially correct
10 Partially correct 114 ms 74068 KB Output is partially correct
11 Partially correct 114 ms 73784 KB Output is partially correct
12 Partially correct 105 ms 69804 KB Output is partially correct
13 Correct 70 ms 49656 KB Output is correct
14 Partially correct 108 ms 70096 KB Output is partially correct
15 Partially correct 110 ms 70076 KB Output is partially correct
16 Partially correct 15 ms 25044 KB Output is partially correct
17 Correct 65 ms 49424 KB Output is correct
18 Correct 66 ms 49380 KB Output is correct
19 Partially correct 105 ms 69840 KB Output is partially correct
20 Partially correct 124 ms 73920 KB Output is partially correct
21 Partially correct 113 ms 73688 KB Output is partially correct
22 Partially correct 116 ms 73740 KB Output is partially correct