2023年第七屆藍橋杯C B組F題

2021-10-03 11:26:43 字數 1742 閱讀 2422

如圖,如下的10個格仔,填入0~9的數字。要求:連續的兩個數字不能相鄰。

(左右、上下、對角都算相鄰)一共有多少種可能的填數方案?

請填寫表示方案數目的整數。

這道題也是組合問題啦~next_permutation解決,分分鐘啊哈哈哈

就是judge的時候有點點麻煩,但是很直觀,超簡單的啦~

我標記的時候是這樣標記的對照**來看,判斷不是相鄰的數字

不多說啦~直接**部分嘻嘻

這道題目dfs也是可以跑的啦~大同小異

#include

using

namespace std;

int a[10]

=;int cnt;

intjudge()

elseif(

fabs

(a[1

]- a[3]

)==1||

fabs

(a[1

]- a[4]

)==1)

elseif(

fabs

(a[2

]- a[3]

)==1||

fabs

(a[2

]- a[5]

)==1||

fabs

(a[2

]- a[6]

)==1)

elseif(

fabs

(a[3

]- a[4]

)==1||

fabs

(a[3

]- a[5]

)==1||

fabs

(a[3

]- a[6]

)==1||

fabs

(a[3

]- a[7]

)==1)

elseif(

fabs

(a[4

]- a[6]

)==1||

fabs

(a[4

]- a[7]

)==1)

elseif(

fabs

(a[5

]- a[6]

)==1||

fabs

(a[5

]- a[8]

)==1||

fabs

(a[5

]- a[9]

)==1)

elseif(

fabs

(a[6

]- a[7]

)==1||

fabs

(a[6

]- a[8]

)==1||

fabs

(a[6

]- a[9]

)==1)

elseif(

fabs

(a[7

]- a[9]

)==1)

elseif(

fabs

(a[8

]- a[9]

)==1)

return flag;

}int

main()

}while

(next_permutation

(a, a +10)

);cout << cnt << endl;

return0;

}

2023年第七屆藍橋杯C B組G題

如圖所示,有12張連在一起的12生肖的郵票。現在你要從中剪下5張來,要求必須是連著的。僅僅連線乙個角不算相連 比如,如圖所示,粉紅色所示部分就是合格的剪取。解題思路就是dfs出5個數出來,也就是12個數選5個數。再判斷連通性,判斷是否連通。模擬乙個矩形出來。找到行和列與填的數字的關係 值的行等於 n...

2023年第七屆藍橋杯C B組H題

四平方和定理,又稱為拉格朗日定理 每個正整數都可以表示為至多4個正整數的平方和。如果把0包括進去,就正好可以表示為4個數的平方和。比如 5 0 2 0 2 1 2 2 2 7 1 2 1 2 1 2 2 2 符號表示乘方的意思 對於乙個給定的正整數,可能存在多種平方和的表示法。要求你對4個數排序 0...

2023年第七屆藍橋杯省賽C B組C題

這個算式中a i代表1 9的數字,不同的字母代表不同的數字。比如 6 8 3 952 714 就是一種解法,5 3 1 972 486 是另一種解法。這個算式一共有多少種解法?好了看到這道題的第一眼我想的是搜尋。其實搜尋可以。但是排列更加簡單。用next permutation 嘻嘻嘻暴力算一下就可...