제출 #844708

#제출 시각아이디문제언어결과실행 시간메모리
844708oneloveforever봉쇄 시간 (IOI23_closing)C++17
8 / 100
143 ms43348 KiB
#include "closing.h" #include <bits/stdc++.h> using namespace std; #define x first #define y second #define ii pair<int,int> #define ll long long using Graph = vector<vector<pair<int, long long>>> ; void dfs(int x,int par,Graph &edge,vector<ll>&dist) { for(ii need:edge[x]) { int node=need.x; ll value=need.y; if(node==par)continue; dist[node]=dist[x]+value; dfs(node,x,edge,dist); } } int Sub1(int N,long long K,vector<ll>distX,vector<ll>distY) { vector<ll>que; for(int i=0; i<=N-1; i++) { que.push_back(distX[i]); que.push_back(distY[i]); } sort(que.begin(),que.end()); ll res=K; int ans=0; for(int value:que) { if(res<value)break; res-=value; ans++; } return ans; } int max_score(int N,int X,int Y,long long K,vector<int>U,vector<int>V,vector<int>W) { Graph edge(N); for(int i=1; i<=N-1; i++) { int x=U[i-1]; int y=V[i-1]; int value=W[i-1]; edge[x].push_back({y,value}); edge[y].push_back({x,value}); } vector<ll>distX(N); vector<ll>distY(N); dfs(X,0,edge,distX); dfs(Y,0,edge,distY); if(distX[Y]>2*K)return Sub1(N,K,distX,distY); } /*signed main() { int n,x,y,k; vector<int>U; vector<int>V; vector<int>W; cin>>n>>x>>y>>k; for(int i=1; i<=n-1; i++) { int x; cin>>x; U.push_back(x); } for(int i=1; i<=n-1; i++) { int y; cin>>y; V.push_back(y); } for(int i=1; i<=n-1; i++) { int value; cin>>value; W.push_back(value); } cout<<max_score(n,x,y,k,U,V,W); }*/

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

closing.cpp: In function 'int max_score(int, int, int, long long int, std::vector<int>, std::vector<int>, std::vector<int>)':
closing.cpp:41:17: warning: control reaches end of non-void function [-Wreturn-type]
   41 |     Graph edge(N);
      |                 ^
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...