Submission #378513

#TimeUsernameProblemLanguageResultExecution timeMemory
378513jass921026Chessboard (IZhO18_chessboard)C++14
0 / 100
24 ms2284 KiB
#include<bits/stdc++.h> using namespace std; #define jizz ios_base::sync_with_stdio(false);cin.tie(NULL); typedef long long ll; typedef pair<int,int> pii; #define F first #define S second #define FOR(i,n) for(int i=0;i<n;i++) #define FOO(i,a,b) for(int i=a;i<=b;i++) #define OOF(i,a,b) for(int i=a;i>=b;i--) #define ALL(x) (x).begin(),(x).end() #define pb push_back #define mkp make_pair const int MAXN=1E5+10; pii point[MAXN]; int main(){ jizz int n, k; cin>>n>>k; FOR(i,k){ int x1, y1, x2, y2; cin>>x1>>y1>>x2>>y2; point[i]=mkp(x1-1,y1-1); } ll ans=n*n; for(int i=1;i*i<=n;i++){ if(n%i==0){ ll col=i*i*(((n/i)*(n/i)+1)/2), rights=0, wrongs=0; for(int j=0;j<k;j++){ if((point[j].F/i)%2==(point[j].S/i)%2){ rights++; } else{ wrongs++; } } ans=min(ans,col-rights+wrongs); col=n*n-col; ans=min(ans,col-wrongs+rights); } } cout<<ans<<"\n"; return 0; } /* 6 8 3 3 3 3 1 2 1 2 3 4 3 4 5 5 5 5 4 3 4 3 4 4 4 4 2 1 2 1 3 6 3 6 */
#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...