#include<bits/stdc++.h>
#define F first
#define S second
#define pb push_back
#define int long long
using namespace std;
const int N=1e6,M=2e3;
int maxx,maxy,minx,miny;
map< pair<int,int> , vector< pair< int,int> > > adj;
map< pair< int,int> , int > vis;
int a[N],b[N],c[N],d[N],ans[301][301];
void dfs(int xnode,int ynode){
vis[{xnode,ynode}]=1;
for(auto x:adj[{xnode,ynode}]){
if(vis[x])
continue;
dfs(x.F,x.S);
}
}
main(){
int n;
cin>>n;
maxx=-1e18,minx=1e18,miny=1e18,maxy=-1e18;
for(int i=0;i<n;i++){
cin>>a[i]>>b[i]>>c[i]>>d[i];
adj[{a[i],b[i]}].pb({c[i],d[i]});
adj[{c[i],d[i]}].pb({a[i],b[i]});
}
int x,y;
cin>>x>>y;
ans[x][y]=1;
for(int i=0;i<n;i++){
for(int j=min(a[i],c[i]);j<=max(a[i],c[i]);j++){
for(int k=min(b[i],d[i]);k<=max(b[i],d[i]);k++){
if(j==x&&k==y){
dfs(a[i],b[i]),dfs(c[i],d[i]);
continue;
}
}
}
}
for(int i=0;i<n;i++){
if(!vis[{a[i],b[i]}]&&!vis[{c[i],d[i]}])
continue;
maxx=max(maxx,max(a[i],c[i]));
maxy=max(maxy,max(b[i],d[i]));
minx=min(minx,min(a[i],c[i]));
miny=min(miny,min(b[i],d[i]));
for(int j=min(a[i],c[i]);j<=max(a[i],c[i]);j++)
for(int k=min(b[i],d[i]);k<=max(b[i],d[i]);k++)
ans[j][k]=1;
}
for(int j=maxy;j>=miny;j--){
for(int i=minx;i<=maxx;i++){
if(ans[i][j]==1)
cout<<"#";
else cout<<".";
}
cout<<endl;
}
cout<<endl;
return 0;
}
Compilation message (stderr)
konj.cpp:24:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
24 | main(){
| ^~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |