답안 #495102

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
495102 2021-12-18T04:48:08 Z Ierus Chessboard (IZhO18_chessboard) C++17
0 / 100
21 ms 1976 KB
#include<bits/stdc++.h>
/*
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
*/
using namespace std;
#pragma GCC optimize ("unroll-loops,Ofast,O3")
#pragma GCC target("avx,avx2,fma")
#define F first
#define S second
#define sz(x) (int)x.size()
#define pb push_back
#define eb emplace_back
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
#define NFS ios_base::sync_with_stdio(0) , cin.tie(0) , cout.tie(0) ;
#define file(s) if (fopen(s".in", "r")) freopen(s".in", "r", stdin), freopen(s".out", "w", stdout)
//#define ordered_set tree<int, null_type,less<int>, rb_tree_tag,tree_order_statistics_node_update>
typedef long long ll;
const int E = 1e6+777;
const long long inf = 1e18+777;
const int N = 1e5+777;
const int MOD = 1e9+7;
vector<int> div(int x){
	vector<int> res = {1};
	for(int i = 2; i * i <= x; ++i){
		if(x % i == 0){
			res.pb(i);
			if(x / i != i)	
				res.pb(x/i);
		}
	}
	sort(all(res));
	return res;
}
struct block{
	int x1, y1, x2, y2;
	void read(){
		cin >> x1 >> y1 >> x2 >> y2;
	}
}a[N];
int n, k, b[N][2];
int get1(){
	int cnt1 = n * n / 2 + (n & 1);
	int cnt2 = n * n - cnt1;
	int sum1 = 0, sum2 = 0;
	for(int i = 1; i <= n; ++i){
		if(i & 1){
			sum1 += b[i][1];
			sum2 += b[i][0];
		}else{
			sum1 += b[i][0];
			sum2 += b[i][1];
		}
	}
	return min(cnt1 - sum1 + sum2, cnt2 - sum2 + cnt1);
}
int get2(vector<int> &d){
	return -1;
}
int main(){auto solve=[&](){
	cin >> n >> k;
	for(int i = 1; i <= k; ++i){
		a[i].read();
		++b[a[i].x1][a[i].y1&1];
	}
	vector<int> d = div(n);
	if(sz(d) == 1){
		cout << get1() << '\n';	
	}else{
		cout << get2(d);	
	}
};NFS;solve();}











# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Incorrect 0 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 21 ms 1976 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 332 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 21 ms 1976 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 332 KB Output is correct
2 Incorrect 0 ms 204 KB Output isn't correct
3 Halted 0 ms 0 KB -