# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
841867 | 2023-09-02T07:50:59 Z | vjudge1 | Roadside Advertisements (NOI17_roadsideadverts) | C++17 | 1000 ms | 4652 KB |
#pragma GCC optimize ("Ofast") #pragma GCC optimize ("unroll-loops") #pragma GCC target("avx,avx2,fma") #include <bits/stdc++.h> using namespace std; #define ll int ll m[50010]; ll n,cnt,a1,a2,a3,a4,a5; bool used[50010]; vector<pair<ll,ll>>g[50010]; void dfs(ll v,ll sum) { if(m[v]==1) { cnt+=sum;sum=0; } //cout<<v<<" "<<sum<<"!!!\n"; used[v]=1; for(pair<ll,ll> it:g[v]) { if(used[it.first]!=1) { dfs(it.first,sum + it.second); } } //cout<<v<<" "<<sum<<"???\n"; } int main() { ios_base::sync_with_stdio(); cin.tie(NULL); cout.tie(NULL); cin>>n; ll q,u,v,c; bool BANKAI=1; ll st=0; for(int i=1;i<n;i++) { //cin>>u>>v>>c; scanf("%d%d%d",&u,&v,&c); g[u].push_back({v,c}); g[v].push_back({u,c}); } cin>>q; while(q--) { scanf("%d%d%d%d%d",&a1,&a2,&a3,&a4,&a5); //cin>>a1>>a2>>a3>>a4>>a5; m[a2]=m[a3]=m[a4]=m[a5]=1; dfs(a1,0); cout<<cnt<<"\n"; m[a2]=m[a3]=m[a4]=m[a5]=0; cnt=0; for(int i=0;i<n;i++)used[i]=0; } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 1368 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1056 ms | 4652 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 116 ms | 3700 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 1368 KB | Output is correct |
2 | Execution timed out | 1056 ms | 4652 KB | Time limit exceeded |
3 | Halted | 0 ms | 0 KB | - |