Submission #499901

#TimeUsernameProblemLanguageResultExecution timeMemory
499901ETK분수 공원 (IOI21_parks)C++17
Compilation error
0 ms0 KiB
#include "park.h" #include <bits/stdc++.h> using namespace std; #define vi vector<int> #define sz(A) int(A.size()) #define pii pair<int,int> const int N = 1e5+5; vi U,V,A,B,lst(N); void add(int u,int v,int a,int b){ U.push_back(u-1),V.push_back(v-1); A.push_back(a),B.push_back(b); if(a>lst[b])lst[b] = a; } int find(int x){return fa[x]==x?x:fa[x]=find(fa[x]);} struct node{int x,y;}v[N]; bool cmp(int x,int y){return v[x].x==v[y].x?v[x].y<v[y].y:v[x].x<v[y].x;} int construct_roads(vi x,vi y){ int n = sz(x); vi p(n); for(int i=1;i<=n;i++)fa[i]=p[i]=i,v[i]={x[i-1],y[i-1]}; sort(p+1,p+n+1,cmp); for(int i=1;i<=n;i++){ int id = p[i]; auto [x,y] = v[id]; bool odd = (x^y)&2; if(i>1 && v[p[i-1]].x==x && v[p[i-1]].y==y-2){//vertical int k = p[i-1]; if(find(k)!=find(id)){ if(odd){ if(lst[y-1]==x-1)add(lst[y],id,x-1,y+1); else add(lst[y],id,x-1,y-1); }else add(k,id,x+1,y-1); } } if(lst[y] && v[lst[y]].x == x-2){//horizontal int k = p[lst[y]]; if(find(k)!=find(id)){ if(odd)add(k,id,x-1,y+1); else{ if(lst[y-1]!=x-1)add(k,id,x-1,y-1); } } } lst[y] = id; } if(sz(U)!=n)return 0; build(U,V,A,B); return 1; }

Compilation message (stderr)

parks.cpp:1:10: fatal error: park.h: No such file or directory
    1 | #include "park.h"
      |          ^~~~~~~~
compilation terminated.