1. 程式人生 > >2017河南省B組藍橋杯真題(1) 方格分割

2017河南省B組藍橋杯真題(1) 方格分割

6x6的方格沿著格子的邊線剪開成兩部分

要求這兩部分的形狀完全相同

如圖:p1.png, p2.png, p3.png 就是可行的分割法

 

試計算

包括這3種分法在內一共有多少種不同的分割方法

注意旋轉對稱的屬於同一種分割法

請提交該整數不要填寫任何多餘的內容或說明文字

#include <bits/stdc++.h>
using namespace std;
int vis[10][10];
int Count;
void dfs(int Ax,int Ay,int Bx,int By){

    if(Ax==Bx && Ay==By){
        Count++;
        return ;
    }

    if(Ax>2 && vis[Ax-1][Ay]==0){
        vis[Ax-1][Ay]=vis[Bx+1][By]=1;
        dfs(Ax-1,Ay,Bx+1,By);
        vis[Ax-1][Ay]=vis[Bx+1][By]=0;
    }

    if(Ax<6 && vis[Ax+1][Ay]==0){
        vis[Ax+1][Ay]=vis[Bx-1][By]=1;
        dfs(Ax+1,Ay,Bx-1,By);
        vis[Ax+1][Ay]=vis[Bx-1][By]=0;
    }

    if(Ay>2 && vis[Ax][Ay-1]==0){
        vis[Ax][Ay-1]=vis[Bx][By+1]=1;
        dfs(Ax,Ay-1,Bx,By+1);
        vis[Ax][Ay-1]=vis[Bx][By+1]=0;
    }

    if(Ay<6 && vis[Ax][Ay+1]==0){
        vis[Ax][Ay+1]=vis[Bx][By-1]=1;
        dfs(Ax,Ay+1,Bx,By-1);
        vis[Ax][Ay+1]=vis[Bx][By-1]=0;
    }

}

int judge(int x,int y){

    memset(vis,0,sizeof(vis));
    Count = 0;
    if(x==1)x++;
    vis[x][y]=vis[8-x][8-y]=1;
    dfs(x,y,8-x,8-y);
    return Count;
}

int main(){
    int ans=0;
    for(int i=2;i<=6;i++)ans+=judge(1,i);
    cout<<ans<<endl;
}

相關推薦

2017河南省B藍橋(1) 方格分割

6x6的方格,沿著格子的邊線剪開成兩部分。要求這兩部分的形狀完全相同。如圖:p1.png, p2.png, p3.png 就是可行的分割法。 試計算:包括這3種分法在內,一共有多少種不同的分割方法。注意

2017河南省B藍橋(1) 包子湊數

小明幾乎每天早晨都會在一家包子鋪吃早餐。他發現這家包子鋪有N種蒸籠,其中第i種蒸籠恰好能放Ai個包子。每種蒸籠都有非常多籠,可以認為是無限籠。 每當有顧客想買X個包子,賣包子的大叔就會迅速選出若干籠包子

2018省賽第九屆藍橋C語言B第九題解 全球變暖

標題:全球變暖你有一張某海域NxN畫素的照片,"."表示海洋、"#"表示陸地,如下所示:........##.....##........##...####....###........其中"上下左右"四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。  由於全

2018 藍橋 省賽 B C語言B 第二 第九屆藍橋+答案+解析

這段資訊是(一共10個漢字):4 0 4 0 4 0 4 32 -1 -16 4 32 4 32 4 32 4 32 4 32 8 32 8 32 16 34 16 34 32 30 -64 0 16 64 16 64 34 68 127 126 66 -124 67 4 66 4 66 -124 126 1

2018省賽第九屆藍橋C語言B第八題解 日誌統計

標題:日誌統計小明維護著一個程式設計師論壇。現在他收集了一份"點贊"日誌,日誌共有N行。其中每一行的格式是:ts id  表示在ts時刻編號id的帖子收到一個"贊"。  現在小明想統計有哪些帖子曾經是"熱帖"。如果一個帖子曾在任意一個長度為D的時間段內收到不少於K個贊,小明就

2018 藍橋 省賽 B C語言B 第8 第九屆藍橋 日誌統計

標題:日誌統計小明維護著一個程式設計師論壇。現在他收集了一份"點贊"日誌,日誌共有N行。其中每一行的格式是:ts id  表示在ts時刻編號id的帖子收到一個"贊"。  現在小明想統計有哪些帖子曾經是"熱帖"。如果一個帖子曾在任意一個長度為D的時間段內收到不少於K個贊,小明就

第九屆藍橋B 第8

標題:日誌統計 小明維護著一個程式設計師論壇。現在他收集了一份"點贊"日誌,日誌共有N行。其中每一行的格式是: ts id   表示在ts時刻編號id的帖子收到一個"贊"。   現在小明想統計有哪些

2018省賽第九屆藍橋C語言B第六題解 遞增三元

標題:遞增三元組給定三個整數陣列A = [A1, A2, ... AN], B = [B1, B2, ... BN], C = [C1, C2, ... CN],請你統計有多少個三元組(i, j, k) 滿足:1. 1 <= i, j, k <= N  2. Ai

第四屆藍橋 連號區間

max 排列 add sca ace box 題目 initial for 本來想練習並查集,然後在看官網提示這是並查集類型題目,上來先默寫了一下並查集,想了半天並查集怎麽寫。。我呸,並查集。。這裏找規律。。區間的【最大值-最小值】=【區間長度】,直接枚舉。。。討厭這種找規

第六屆藍橋總結

for a* 截斷 如果 pan 文字 居中 size using 第一題:獎券數目 有些人很迷信數字,比如帶“4”的數字,認為和“死”諧音,就覺得不吉利。 雖然這些說法純屬無稽之談,但有時還要迎合大眾的需求。某抽

藍橋-記事本替換運用】購物單

第一題 標題: 購物單 小明剛剛找到工作,老闆人很好,只是老闆夫人很愛購物。老闆忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。 這不,XX大促銷又來了!老闆夫人開出了長長的購物單,都是有打折優惠的。 小明也有個怪癖,不到萬不得已,從不刷卡,直接現金搞

藍橋 測試次數(詳解)--------Five-菜鳥級

                                        

藍橋 取球遊戲 題解

題目: 今盒子裡有n個小球,A、B兩人輪流從盒中取球,每個人都可以看到另一個人取了多少個,也可以看到盒中還剩下多少個,並且兩人都很聰明,不會做出錯誤的判斷。 每個人從盒子中取出的球的數目必須是:1,3,7或者8個。 輪到某一方取球時不能棄權! A先取球,

藍橋 ——地宮取寶(java)

 標題:地宮取寶     X 國王有一個地宮寶庫。是 n x m 個格子的矩陣。每個格子放一件寶貝。每個寶貝貼著價值標籤。     地宮的入口在左上角,出口在右下角。    

藍橋——黃金分割數

題目: 黃金分割數0.61803... 是個無理數,這個常數十分重要,在許多工程問題中會出現。有時需要把這個數字求得很精確。 對於某些精密工程,常數的精度很重要。也許你聽說過哈勃太空望遠鏡,它首次升

藍橋 振興中華 題解

題目: 小明參加了學校的趣味運動會,其中的一個專案是:跳格子。 地上畫著一些格子,每個格子裡寫一個字,如下所示:(也可參見下圖) 從我做起振 我做起振興 做起振興中 起振興中華 比賽時,先

2017年A藍橋(最大公共子串問題)【動態規劃】

最大公共子串長度問題就是:求兩個串的所有子串中能夠匹配上的最大長度是多少。比如:"abcdkkk" 和"baabcdadabc",可以找到的最長的公共子串是"abcd",所以最大公共子串長度為4。下面的程式是採用矩陣法進行求解的,這對串的規模不大的情況還是比較有效的解法。請分

15年藍橋——完美正方形

如果一些邊長互不相同的正方形,可以恰好拼出一個更大的正方形,則稱其為完美正方形。 歷史上,人們花了很久才找到了若干完美正方形。比如:如下邊長的22個正方形 2 3 4 6 7 8 12 13 14 15

藍橋-線性素數法+列舉法】等差素數列

(程式碼原po): #include <algorithm>#include <string.h>#include <iostream>#include &l

2017第八屆藍橋 A C/C++ 及題解

1. (5')標題: 購物單    小明剛剛找到工作,老闆人很好,只是老闆夫人很愛購物。老闆忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。    這不,XX大促銷又來了!老闆夫人開出了長長的購物單,都是有打折優惠的。    小明也有個怪癖,不到萬不得已,從不