1. 程式人生 > >【牛客 - 302哈爾濱理工大學軟體與微電子學院第八屆程式設計競賽同步賽(低年級)】小樂樂切割方塊(思維,水題)

【牛客 - 302哈爾濱理工大學軟體與微電子學院第八屆程式設計競賽同步賽(低年級)】小樂樂切割方塊(思維,水題)

題幹:
 

小樂樂的作業本是2n*2n的方格本。

某天小樂樂的童鞋,想要考驗一下小樂樂。

他將小樂樂的一張方格紙中的某個格子(x,y)塗成黑色,

小樂樂能否在將4*4的方格本沿著方格邊緣且切割線與黑色方格不存在公共交點的情況下將方格本切割成兩部分。

兩部分可以通過旋轉重合。

輸入描述:

輸入整數2n,x,y。(2 ≤ 2n≤ 100, 1 ≤x,y≤ 2n)

輸出描述:

如果能完成切割輸出"Yes",否則輸出"No"。

 

示例1

輸入

複製

4 1 1

輸出

複製

Yes

說明

 

圖片提供兩種切割方式(切割方式不僅限這兩種)。

 

解題報告:

  思維一下,,,不難證明,,只要不放在中間方塊就可以。。其實就是個先猜結論再證明的方法。

AC程式碼:

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<queue>
#include<map>
#include<vector>
#include<set>
#include<string>
#include<cmath>
#include<cstring>
#define ll long long
#define pb push_back
#define pm make_pair
#define fi first
#define se second
using namespace std;
const int MAX = 2e5 + 5;
int main()
{
    int n,x,y;
    cin>>n>>x>>y;
    if((x>=n/2&&x<=n/2+1)&&(y>=n/2&&y<=n/2+1)) cout<<"No"<<endl;
    else cout<<"Yes"<<endl;
    return 0;
}