제출 #137828

#제출 시각아이디문제언어결과실행 시간메모리
137828vardan__02Chessboard (IZhO18_chessboard)C++14
16 / 100
41 ms2424 KiB
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstring>
#include <string>
#include <vector>
#include <cstdio>
#include <queue>
#include <deque>
#include <stack>
#include <cmath>
#include <list>
#include <set>
#include <map>
using namespace std;
typedef long long ll;
#define MP make_pair
#define PB push_back
ll n,k,p,u,ans,color[105],i,j,qanak[105],v,x,y;
void entaxndir1();
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cin>>n>>k;
    if(k==0)
    {
        entaxndir1();
        return 0;
    }
    for(i=1;i<=k;i++)
    {
        cin>>x>>y>>x>>y;
        if(x%2==y%2)
            u++;
        else
            v++;
    }
    p=n*n/2+1-u+v;
    ans=n*n/2-v+u;
    cout<<min(ans,p)<<endl;
    return 0;
}
void entaxndir1()
{
    ll x,i,u,ans;
    x=n;
    for(i=2;i<=n;i++)
    {
        if(n%i==0)
        {
            while(n%i==0)
            {
                qanak[i]++;
                n/=i;
            }
        }
    }
    for(i=x;i>=2;i--)
    {
        if(qanak[i]!=0)
        {
            u=i;
            break;
        }
    }
    x/=u;
    ans=u*u/2;
    ans=ans*x*x;
    x*=u;
    for(i=2;i<=x;i++)
    {
        if(qanak[i]!=0)
        {
            n=i;
            break;
        }
    }
    x/=n;
    n=n*n/2;
    ans=min(ans,n*x*x);
    cout<<ans<<endl;
}

컴파일 시 표준 에러 (stderr) 메시지

chessboard.cpp: In function 'void entaxndir1()':
chessboard.cpp:71:6: warning: 'u' may be used uninitialized in this function [-Wmaybe-uninitialized]
     x*=u;
     ~^~~
#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...