Submission #90125

#TimeUsernameProblemLanguageResultExecution timeMemory
90125Atashka01Chessboard (IZhO18_chessboard)C++11
70 / 100
631 ms8740 KiB
//Euzibillahiminesseqtanirracim Bismillahirrahmanirrahim

/*
ID:
TASK:
LANG: C++
*/

#include <bits/stdc++.h>
#define pb push_back
#define ll long long
#define ff first
#define ss second
#define mp make_pair
#define PII pair<int,int>
#define inf 100000000001
using namespace std;

long long n, m, ans = inf , r;

double l;

pair<long long, long long> d[100001];

vector<long long>v;

void f(int x1,int q1,int x2,int q2){
	
	for(auto x:v){
		
		if( (x1%(2*x) < x && q1%(2*x) < x) || (x1%(2*x) >= x && q1%(2*x) >= x) ){
			
			d[x].ff--;
			d[x].ss++;
			
		}
		else{
			
			d[x].ff++;
			d[x].ss--;
			
		}
		
	}		
	
}

long long x1, q1, x2, q2;

int main()
{
	
	cin>>n>>m;
	
	v.pb(1);
		
	for(int i=2;i<=sqrt(n);i++) if(n%i == 0){
		
		v.pb(i);
		v.pb(n/i);
		
	}
	
	r = sqrt(n);
	l = sqrt(n);
	
	if(l == r) v.pop_back();
	
	
	for(auto x:v){
		
		d[x].ff = (( (n/x)*(n/x) )/ 2 + ( (n/x)*(n/x) )% 2 ) * x*x;
		d[x].ss = n*n - d[x].ff;
		
	}
	
	
	while(m--){
		
		cin>>x1>>q1>>x2>>q2;
		
		f(x1 - 1 ,q1 - 1 ,x2 - 1 ,q2 - 1 );
		
		
	}
	
	for(auto x:v){
		
		ans = min(ans , min( d[x].ff , d[x].ss ));
		
	}
	
	cout<<ans;
	
}

/*
_________oBBBBB8o   oBBBBBBB8
_____o8BBBBBBBBBBB  BBBBBBBBB8        o88o
___o8BBBBBB**8BBBB  BBBBBBBBBB     oBBBBBBBo
__oBBBBBBB*   ***   BBBBBBBBBB     BBBBBBBBBBo
_8BBBBBBBBBBooooo   *BBBBBBB8      *BB* 8BBBBBBo
_8BBBBBBBBBBBBBBBB8ooBBBBBBB8           8BBBBBBB8
__*BBBBBBBBBBBBBBBBBBBBBBBBBB8 o88BB88BBBBBBBBBBBB
____*BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB8
______**8BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB*
___________*BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB8*
____________*BBBBBBBBBBBBBBBBBBBBBBBB8888**
_____________BBBBBBBBBBBBBBBBBBBBBBB*
_____________*BBBBBBBBBBBBBBBBBBBBB*
______________*BBBBBBBBBBBBBBBBBB8
_______________*BBBBBBBBBBBBBBBB*
________________8BBBBBBBBBBBBBBB8
_________________8BBBBBBBBBBBBBBBo
__________________BBBBBBBBBBBBBBB8
__________________BBBBBBBBBBBBBBBB
__________________8BBBBBBBBBBBBBBB8
__________________*BBBBBBBBBBBBBBBB
__________________8BBBBBBBBBBBBBBBB8
_________________oBBBBBBBBBBBBBBBBBB
________________oBBBBBBBBBBBBBBBBBBB
________________BBBBBBBBBBBBBBBBBBBB
_______________8BBBBBBBBBBBBBBBBBBB8
______________oBBBBBBBBB88BBBBBBBBB8
______________8BBBBBBBBB*8BBBBBBBBB*
______________BBBBBBBBB* BBBBBBBBB8
______________BBBBBBBB8 oBBBBBBBBB*
______________8BBBBBBB  oBBBBBBBB*
______________BBBBBBB*  8BBBBBBB*
_____________8BBBBBB*   BBBBBBB*
____________8BBBBBB8   oBBBBBB8
___________8BBBBBB8    8BBBBBB*
__________oBBBBBB8    BBBBBBB8
__________BBBBBBB8   BBBBBBBB*
_________oBBBBBBB8   BBBBBBBB
_________8BBBBBB8    BBBBBBB*
_________BBBBBB*     8BBBBB*
________oBBBB8       BBBBB*
________oBBB8        BBBB*
________BBBB8       8BBBBo
_______8BBBB*      oBBBBBBo
______8BBBB*       *BBBBBBBB8o
______BBBBB*            *88BBBo
*/
#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...