Submission #151247

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
1512472019-09-02 10:15:08TadijaSebezFactories (JOI14_factories)C++11
100 / 100
4295 ms442172 KiB
#include "factories.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
const ll inf=7e18;
const int N=1000050;
const int L=21;
int n;
vector<pair<int,int>> E[N],B[N];
void AddEdge(int u, int v, int w){ B[u].pb({v,w});B[v].pb({u,w});}
void Build(int u, int p)
{
vector<pair<int,int>> es;
for(auto e:E[u]) if(e.first!=p) es.pb(e);
int last=u;
for(int i=0;i<es.size();i++)
{
AddEdge(last,es[i].first,es[i].second);
if(i+2<es.size())
{
n++;
AddEdge(last,n,0);
last=n;
}
}
for(auto e:es) Build(e.first,u);
}
int go[N][L];
ll dep[N][L];
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

factories.cpp: In function 'void Build(int, int)':
factories.cpp:17:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<es.size();i++)
              ~^~~~~~~~~~
factories.cpp:20:9: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if(i+2<es.size())
      ~~~^~~~~~~~~~
factories.cpp: In function 'void Decompose(int, int)':
factories.cpp:48:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<B[u].size();i++) if(!was[B[u][i].first])
              ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...