Submission #290540

#TimeUsernameProblemLanguageResultExecution timeMemory
290540matheo_apdChessboard (IZhO18_chessboard)C++17
8 / 100
149 ms3832 KiB
#include <bits/stdc++.h> using namespace std; #define maxn 100005 #define ll long long int ll n, k; vector<int> chess[maxn]; void solve_k0(){ ll minimo = 999999; for(int i = 1; i < n; i++){ if(n % i != 0) continue; int test = i*i; minimo = min(minimo, ((n*n/test)/2)*test); } cout << minimo << endl; } ll block(ll number, ll siz){ return ((n-1)/siz + 1)%2; } ll solve_square(ll siz){ ll cont = 0; for(int i = 1; i <= n; i++){ ll cont_errado = 0, cont_certo = 0; for(int j = 0; j < chess[i].size(); j++){ //if((i+j)%2 == chess[i][j]) cont_errado++; int row = chess[i][j]; if(block(i, siz) == block(row, siz)) cont_certo++; else cont_errado++; } cont += cont_errado + n/2 + block(i, siz) - cont_certo; } return min(cont, n*n - cont); } int main(){ memset(chess, 0, sizeof chess); cin >> n >> k; if(k == 0) solve_k0(); else{ for(int i = 0; i < k; i++){ int x, y, l, m; cin >> x >> y; cin >> l >> m; //8) chess[x].push_back(y); } ll minimo = 999999999999; for(ll i = 1; i < n; i++){ if(i%n) minimo = min(minimo, solve_square(i)); } } return 0; }

Compilation message (stderr)

chessboard.cpp: In function 'long long int solve_square(long long int)':
chessboard.cpp:23:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |   for(int j = 0; j < chess[i].size(); j++){
      |                  ~~^~~~~~~~~~~~~~~~~
#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...