제출 #1293949

#제출 시각아이디문제언어결과실행 시간메모리
1293949aren_dance장애물 (IOI25_obstacles)C++17
24 / 100
74 ms9120 KiB
#include <bits/stdc++.h> using namespace std; const int N=6e5+1; int mast[N]; int mash[N]; int n,m; int pref_maxv[N]; int pref_min[N]; int am[N]; int p[N]; int sz[N]; bool vis[N]; void init(){ for(int i=1;i<=m;++i){ p[i]=i; } } int par(int v){ if(p[v]==v){ return v; } p[v]=par(p[v]); return p[v]; } void merge(int u,int v){ if(sz[v]>sz[u]){ swap(u,v); } sz[u]+=sz[v]; p[v]=u; } void dsu(int u,int v){ u=par(u); v=par(v); if(u!=v){ merge(u,v); } } void initialize(vector<int> t, vector<int> h) { n=t.size(); m=h.size(); init(); for(int i=0;i<m;++i){ if(h[i]<t[n-1]){ vis[i+1]=1; if(vis[i]==1 && i!=0){ dsu(i+1,i); } } } } bool can_reach(int l, int r, int s, int d) { if(par(s+1)==par(d+1)){ return 1; } return 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...
#Verdict Execution timeMemoryGrader output
Fetching results...