Submission #101602

# Submission time Handle Problem Language Result Execution time Memory
101602 2019-03-19T05:01:36 Z briansu Mechanical Doll (IOI18_doll) C++14
37 / 100
185 ms 13496 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;
  int rt;
  A.pb(0);
  build(rt, A);
  REP(i, M+1)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 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Partially correct 1 ms 204 KB Output is partially correct
2 Partially correct 136 ms 12208 KB Output is partially correct
3 Partially correct 139 ms 12892 KB Output is partially correct
4 Partially correct 154 ms 12696 KB Output is partially correct
# Verdict Execution time Memory Grader output
1 Partially correct 1 ms 204 KB Output is partially correct
2 Partially correct 136 ms 12208 KB Output is partially correct
3 Partially correct 139 ms 12892 KB Output is partially correct
4 Partially correct 154 ms 12696 KB Output is partially correct
5 Partially correct 171 ms 13496 KB Output is partially correct
6 Partially correct 185 ms 13444 KB Output is partially correct
7 Partially correct 154 ms 13444 KB Output is partially correct
8 Partially correct 184 ms 13228 KB Output is partially correct
9 Partially correct 162 ms 12144 KB Output is partially correct
10 Partially correct 146 ms 13256 KB Output is partially correct
11 Partially correct 182 ms 12948 KB Output is partially correct
12 Partially correct 135 ms 13164 KB Output is partially correct
13 Partially correct 158 ms 12708 KB Output is partially correct
14 Partially correct 141 ms 12672 KB Output is partially correct
15 Partially correct 143 ms 12724 KB Output is partially correct
16 Partially correct 5 ms 716 KB Output is partially correct
17 Correct 81 ms 7348 KB Output is correct
18 Partially correct 134 ms 12344 KB Output is partially correct
19 Partially correct 138 ms 13112 KB Output is partially correct
20 Partially correct 145 ms 13240 KB Output is partially correct
21 Partially correct 147 ms 12952 KB Output is partially correct
22 Partially correct 146 ms 13084 KB Output is partially correct