Submission #217950

#TimeUsernameProblemLanguageResultExecution timeMemory
217950Sho10T-Covering (eJOI19_covering)C++14
5 / 100
87 ms12024 KiB
/* ID: Sho10 LANG: C++ */ #include <bits/stdc++.h> //Andrei Alexandru a.k.a Sho10 #define ll long long int #pragma GCC optimize("O3") #pragma GCC optimize("Ofast") #define all(a) (a).begin(), (a).end() #define sz size #define f first #define s second #define pb push_back #define er erase #define in insert #define mp make_pair #define pi pair #define rc(s) return cout<<s,0 #define endl '\n' #define mod 1000000007 #define PI 3.14159265359 #define CODE_START ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; ll m,n,k,x,y; int32_t main(){ CODE_START; cin>>n>>m; ll a[n+5][m+5]; for(ll i=0;i<n;i++) { for(ll j=0;j<m;j++) { cin>>a[i][j]; } } ll ans=0; cin>>k; while(k--){ cin>>x>>y; ans=ans+a[x][y]; ll s1=-1; if(x-1>=0&&y+1<m&&y-1>=0){ s1=max(s1,a[x-1][y]+a[x][y+1]+a[x][y-1]); } if(x-1>=0&&y-1>=0&&x+1<n){ s1=max(s1,a[x-1][y]+a[x+1][y]+a[x][y-1]); } if(x-1>=0&&x+1<n&&y+1<m){ s1=max(s1,a[x-1][y]+a[x+1][y]+a[x][y+1]); } if(y+1<m&&y-1>=0&&x+1<n){ s1=max(s1,a[x][y+1]+a[x][y-1]+a[x+1][y]); } if(s1==-1){ cout<<"No"<<endl; return 0; } ans=ans+s1; } cout<<ans<<endl; }
#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...