제출 #75082

#제출 시각아이디문제언어결과실행 시간메모리
75082faustaadp통행료 (IOI18_highway)C++17
12 / 100
457 ms262148 KiB
#include "highway.h" #include<bits/stdc++.h> #define ll long long #define pb push_back #define mp make_pair #define fi first #define se second using namespace std; ll i,jar,L,R,C,bew[101010]; vector<ll> v[101010],mun,xo[101010]; void dfs(ll aa,ll bb,ll cc) { if(bb==jar) mun.pb(aa); ll ii; for(ii=0;ii<v[aa].size();ii++) if(v[aa][ii]!=cc) { bew[v[aa][ii]]=xo[aa][ii]; dfs(v[aa][ii],bb+1,aa); } } void find_pair(int N, std::vector<int> U, std::vector<int> V, int A, int B) { ll M = U.size(); for(i=0;i<M;i++) { v[U[i]].pb(V[i]); v[V[i]].pb(U[i]); xo[U[i]].pb(i); xo[V[i]].pb(i); } vector<int> tan(M); for(i=0;i<M;i++) tan[i]=0; jar=ask(tan)/A; dfs(0,0,0); //cout<<jar*A<<"\n"; // for(i=0;i<mun.size();i++)cout<<mun[i]<<" ";cout<<"\n"; L=0; R=mun.size()-1; while(L<R) { C=(L+R)/2; for(i=0;i<M;i++) tan[i]=0; for(i=L;i<=C;i++) tan[bew[mun[i]]]=1; //for(i=0;i<M;i++)cout<<tan[i]<<" ";cout<<"\n"; //cout<<L<<" "<<R<<" "<<ask(tan)<<"\n"; if(ask(tan)>A*jar)R=C; else L=C+1; } answer(0, mun[L]); }

컴파일 시 표준 에러 (stderr) 메시지

highway.cpp: In function 'void dfs(long long int, long long int, long long int)':
highway.cpp:16:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(ii=0;ii<v[aa].size();ii++)
              ~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...