제출 #889647

#제출 시각아이디문제언어결과실행 시간메모리
889647vjudge1Tourism (JOI23_tourism)C++17
5 / 100
5072 ms13756 KiB
#include <bits/stdc++.h> using namespace std;/* <<<<It's never too late for a new beginning in your life>>>> Today is hard tomorrow will worse but the day after tomorrow will be the sunshine.. HARD WORK BEATS TALENT WHEN TALENT DOESN'T WORK HARD............ Never give up */ //The most CHALISHKANCHIK #define ff first #define ss second #define pb push_back #define all(x) x.begin(),x.end() #define rall(x) x.rbegin(),x.rend() #define int long long typedef vector<int> vi; typedef pair<int,int> pii; typedef vector<pair<int,int> > vii; const int N = 2e5+50, inf = 1e18, mod = 1e9+7; vi g[N]; set<pii> mp, path; set<int> chk; void dfs(int pos, int pr){ if(chk.empty())return; if(chk.count(pos) > 0){ chk.erase(chk.find(pos)); if(!path.empty()){ for(auto i:path)mp.insert(i); } } for(auto to:g[pos]){ if(to == pr)continue; path.insert({pos, to}); dfs(to, pos); path.erase(path.find({pos, to})); } } void solve(){ int n, m, q, a, b; cin >> n >> m >> q; for(int i = 0; i < n-1; i++){ cin >> a >> b; g[a].pb(b); g[b].pb(a); } int pl[m+1]{}; for(int i = 1; i <= m; i++){ cin >> pl[i]; } while(q--){ int l, r; cin >> l >> r; for(int i = l; i <= r; i++)chk.insert(pl[i]); dfs(pl[l], -1); cout << mp.size()+1 << '\n'; mp.clear(); path.clear(); } } main(){ ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); int t = 1; //~ cin >> t; while(t--){ solve(); } }

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

tourism.cpp:61:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   61 | main(){
      | ^~~~
#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...