Submission #101630

# Submission time Handle Problem Language Result Execution time Memory
101630 2019-03-19T05:30:00 Z briansu Mechanical Doll (IOI18_doll) C++14
47 / 100
202 ms 13824 KB
#include "doll.h"
//{
#include<bits/stdc++.h>
using namespace std;
typedef int ll;
typedef double lf;
typedef pair<ll,ll> ii;
#define REP(i,n) for(ll i=0;i<n;i++)
#define REP1(i,n) for(ll i=1;i<=n;i++)
#define FILL(i,n) memset(i,n,sizeof i)
#define X first
#define Y second
#define SZ(_a) (int)_a.size()
#define ALL(_a) _a.begin(),_a.end()
#define pb push_back
#ifdef brian
#define debug(...) do{\
    fprintf(stderr,"%s - %d (%s) = ",__PRETTY_FUNCTION__,__LINE__,#__VA_ARGS__);\
    _do(__VA_ARGS__);\
}while(0)
template<typename T>void _do(T &&_x){cerr<<_x<<endl;}
template<typename T,typename ...S> void _do(T &&_x,S &&..._t){cerr<<_x<<" ,";_do(_t...);}
template<typename _a,typename _b> ostream& operator << (ostream &_s,const pair<_a,_b> &_p){return _s<<"("<<_p.X<<","<<_p.Y<<")";}
template<typename It> ostream& _OUTC(ostream &_s,It _ita,It _itb)
{
    _s<<"{";
    for(It _it=_ita;_it!=_itb;_it++)
    {
        _s<<(_it==_ita?"":",")<<*_it;
    }
    _s<<"}";
    return _s;
}
template<typename _a> ostream &operator << (ostream &_s,vector<_a> &_c){return _OUTC(_s,ALL(_c));}
template<typename _a> ostream &operator << (ostream &_s,set<_a> &_c){return _OUTC(_s,ALL(_c));}
template<typename _a,typename _b> ostream &operator << (ostream &_s,map<_a,_b> &_c){return _OUTC(_s,ALL(_c));}
template<typename _t> void pary(_t _a,_t _b){_OUTC(cerr,_a,_b);cerr<<endl;}
#define IOS()
#else
#define debug(...)
#define pary(...)
#define endl '\n'
#define IOS() ios_base::sync_with_stdio(0);cin.tie(0);
#endif // brian
//}

const ll MAXn = 400000 + 5;

ll x[MAXn], y[MAXn];
vector<int> C, X, Y;
ll sit = 0;


ll nnd(){
  return --sit;
}

void build(int &now, vector<int> v)
{
  debug(v);
  if(SZ(v) == 1){
    now = v[0];
    return;
  }
  now = nnd();
  vector<int> a, b;
  if(SZ(v) % 2 != 0){
    a.pb(now);
    for(int i = 0;i < SZ(v);i += 2)b.pb(v[i]);
    for(int i = 1;i < SZ(v);i += 2)a.pb(v[i]);
  }else{
    for(int i = 0;i < SZ(v);i += 2)a.pb(v[i]);
    for(int i = 1;i < SZ(v);i += 2)b.pb(v[i]);
  }
  assert(SZ(a) == SZ(b));
  debug(a, b);
  build(x[- now - 1], a);
  build(y[- now - 1], b);
}

void create_circuit(int M, std::vector<int> A) {
  X.clear();Y.clear();C.clear();sit = 0;
  vector<int> v;
  for(int i = 1;i < SZ(A);i ++)v.pb(A[i]);
  v.pb(0);
  int rt;
  build(rt, v);
  C.pb(A[0]);
  REP(i, M)C.pb(rt);
  REP(i, -sit)X.pb(x[i]), Y.pb(y[i]);
  answer(C, X, Y);
}
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 2 ms 204 KB Output is correct
4 Correct 2 ms 204 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 1 ms 204 KB Output is partially correct
2 Correct 79 ms 6584 KB Output is correct
3 Partially correct 141 ms 12148 KB Output is partially correct
4 Partially correct 162 ms 11836 KB Output is partially correct
# Verdict Execution time Memory Grader output
1 Partially correct 1 ms 204 KB Output is partially correct
2 Correct 79 ms 6584 KB Output is correct
3 Partially correct 141 ms 12148 KB Output is partially correct
4 Partially correct 162 ms 11836 KB Output is partially correct
5 Partially correct 163 ms 13824 KB Output is partially correct
6 Partially correct 152 ms 12588 KB Output is partially correct
7 Partially correct 174 ms 12764 KB Output is partially correct
8 Partially correct 152 ms 12548 KB Output is partially correct
9 Partially correct 151 ms 12040 KB Output is partially correct
10 Partially correct 152 ms 12432 KB Output is partially correct
11 Partially correct 146 ms 12280 KB Output is partially correct
12 Partially correct 147 ms 12412 KB Output is partially correct
13 Correct 86 ms 7100 KB Output is correct
14 Partially correct 202 ms 12840 KB Output is partially correct
15 Partially correct 180 ms 12816 KB Output is partially correct
16 Partially correct 5 ms 716 KB Output is partially correct
17 Correct 81 ms 6816 KB Output is correct
18 Correct 108 ms 6816 KB Output is correct
19 Partially correct 172 ms 12332 KB Output is partially correct
20 Partially correct 148 ms 12416 KB Output is partially correct
21 Partially correct 166 ms 12160 KB Output is partially correct
22 Partially correct 154 ms 12188 KB Output is partially correct