Submission #1140025

#TimeUsernameProblemLanguageResultExecution timeMemory
1140025brover29Golf (JOI17_golf)C++17
0 / 100
12 ms24128 KiB
#include <bits/stdc++.h> //qwerty47924692 using namespace std; using ll = long long; const ll N=2015; const string br="617283"; #define sz(a)(ll)a.size() #define f first #define s second ll a[N][N],xa,ya,xb,yb,d[N][N],used[N][N],n; ll dx[4]={1,0,-1,0},dy[4]={0,1,0,-1}; void bfs(ll xs,ll ys){ queue<pair<ll,ll>>q; q.push({xs,ys}); d[xs][ys]=0; while(q.size()){ ll x=q.front().f; ll y=q.front().s; q.pop(); if(used[x][y])continue; used[x][y]=1; for(ll i=0;i<4;i++){ for(ll j=1;j<=200;j++){ ll nx=x+dx[i]*j; ll ny=y+dy[i]*j; if(nx<1||nx>205||ny<1||ny>205)break; if(a[nx][ny]>=1)break; if(d[nx][ny]>d[x][y]+1){ d[nx][ny]=d[x][y]+1; q.push({nx,ny}); } } } } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin>>xa>>ya>>xb>>yb; xa*=2; ya*=2; xb*=2; yb*=2; cin>>n; for(ll i=1;i<=n;i++){ ll xa,ya,xb,yb; cin>>xa>>xb>>ya>>yb; xa*=2; ya*=2; xb*=2; yb*=2; xa++; xb--; ya++; yb--; if(xa>xb||ya>yb)continue; a[xa][ya]++; a[xb+1][ya]--; a[xa][yb+1]--; a[xb+1][yb+1]++; } for(ll i=1;i<=1005;i++){ for(ll j=1;j<=1005;j++){ a[i][j]+=a[i-1][j]+a[i][j-1]-a[i-1][j-1]; d[i][j]=1e18; } } bfs(xa,ya); cout<<d[xb][yb]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...