Submission #529241

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
5292412022-02-22 14:19:01AdamGSElection Campaign (JOI15_election_campaign)C++17
100 / 100
192 ms25604 KiB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(a, b) for(int a = 0; a < (b); ++a)
#define st first
#define nd second
#define pb push_back
#define all(a) a.begin(), a.end()
const int LIM=1e5+7;
vector<int>V[LIM];
vector<pair<pair<int,int>,ll>>P[LIM];
int ojciec[LIM], pierwszy[LIM], odleglosc[LIM], rozmiar[LIM], numer[LIM], akt;
ll tr[4*LIM], dp[LIM], N=1; // w wierzcholku trzymam sum(dp[syn])-dp[x]
void DFS(int x, int o) {
rozmiar[x]=1;
ojciec[x]=o;
for(auto i : V[x]) if(i!=o) {
odleglosc[i]=odleglosc[x]+1;
DFS(i, x);
rozmiar[x]+=rozmiar[i];
}
rep(i, V[x].size()) if(V[x][0]==o || rozmiar[V[x][i]]>rozmiar[V[x][0]])
swap(V[x][0], V[x][i]);
}
void DFS2(int x, int o) {
numer[x]=akt; ++akt;
if(V[x][0]!=o) pierwszy[V[x][0]]=pierwszy[x];
for(auto i : V[x]) if(i!=o) DFS2(i, x);
}
void upd(int v, ll x) {
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

election_campaign.cpp: In function 'void DFS(int, int)':
election_campaign.cpp:4:36: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    4 | #define rep(a, b) for(int a = 0; a < (b); ++a)
      |                                    ^
election_campaign.cpp:22:3: note: in expansion of macro 'rep'
   22 |   rep(i, V[x].size()) if(V[x][0]==o || rozmiar[V[x][i]]>rozmiar[V[x][0]])
      |   ^~~
#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...