Submission #43882

#TimeUsernameProblemLanguageResultExecution timeMemory
43882TenuunChessboard (IZhO18_chessboard)C++11
0 / 100
88 ms1920 KiB
#include<bits/stdc++.h> using namespace std; int main(){ int n, k, x, y, x1, y1, res=INT_MAX; cin >> n >> k; vector<int>fac; map<int, int>map; for(int i=1; i<n; i++){ if(n%i==0){ fac.push_back(i); } } for(int j=0; j<k; j++){ cin >> x >> y >> x1 >> y1; for(int i=0; i<fac.size(); i++){ if((x%(2*fac[i])>=1 && x%(2*fac[i])<=fac[i] && y%(2*fac[i])<=fac[i]&&y%(2*fac[i])>=1) ||((x%(2*fac[i])==0 || x%(2*fac[i])>fac[i]) && (y%(2*fac[i])>fac[i]||y%(2*fac[i])==0)) )map[i+1]++; } } int i=0; for (auto it=map.begin(); it!=map.end(); ++it){ int res1, res2; //cout << it->first << it->second << endl; res1=(n*n-fac[i]*fac[i])/2+fac[i]*fac[i]-it->second+k-it->second; res2=it->second+(n*n-fac[i]*fac[i])/2-(k-it->second); res2=n*n-res1; cout << it->second << " " << res1 << " " << res2 << endl; res=min(res, res1); res=min(res, res2); i++; } cout << res; return 0; }

Compilation message (stderr)

chessboard.cpp: In function 'int main()':
chessboard.cpp:17:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int i=0; i<fac.size(); i++){
                ~^~~~~~~~~~~
#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...