2023年藍橋杯B組C C 決賽題目

2022-03-06 19:42:40 字數 4402 閱讀 6520

從昏迷中醒來,小明發現自己被關在x星球的廢礦車裡。

礦車停在平直的廢棄的軌道上。

他的面前是兩個按鈕,分別寫著「f」和「b」。

小明突然記起來,這兩個按鈕可以控制礦車在軌道上前進和後退。

按f,會前進97公尺。按b會後退127公尺。

透過昏暗的燈光,小明看到自己前方1公尺遠正好有個監控探頭。

他必須設法使得礦車正好停在攝像頭的下方,才有機會爭取同伴的援助。

或許,通過多次操作f和b可以辦到。

礦車上的動力已經不太足,黃色的警示燈在默默閃爍...

每次進行 f 或 b 操作都會消耗一定的能量。

小明飛快地計算,至少要多少次操作,才能把礦車準確地停在前方1公尺遠的地方。

請填寫為了達成目標,最少需要操作的次數。

把0~9這10個數字,分成多個組,每個組恰好是乙個平方數,這是能夠辦到的。

比如:0, 36, 5948721

再比如:

1098524736

1, 25, 6390784

0, 4, 289, 15376

等等...

注意,0可以作為獨立的數字,但不能作為多位數字的開始。

分組時,必須用完所有的數字,不能重複,不能遺漏。

如果不計較小組內資料的先後順序,請問有多少種不同的分組方案?

有n個棋子a,n個棋子b,在棋盤上排成一行。

它們中間隔著乙個空位,用「.」表示,比如:

aaa.bbb

現在需要所有的a棋子和b棋子交換位置。

移動棋子的規則是:

a棋子只能往右邊移動,b棋子只能往左邊移動。

每個棋子可以移動到相鄰的空位。

每個棋子可以跳過相異的乙個棋子落入空位(a跳過b或者b跳過a)。

aaa.bbb 可以走法:

移動a ==> aa.abbb

移動b ==> aaab.bb

跳走的例子:

aa.abbb ==> aaba.bb

以下的程式完成了ab換位的功能,請仔細閱讀分析原始碼,填寫劃線部分缺失的內容。

#include #include void move(char* data, int from, int to)

int valid(char* data, int k)

void f(char* data)

{ int i;

int tag;

int dd = 0; // 移動方向

while(1){

tag = 0;

for(i=0; i

x星球的機械人表演拉拉隊有兩種服裝,a和b。

他們這次表演的是搭機械人塔。

類似:

ab b

a b a

a a b b

b b b a b

a b a b b a

隊內的組塔規則是:

a 只能站在 aa 或 bb 的肩上。

b 只能站在 ab 或 ba 的肩上。

你的任務是幫助拉拉隊計算一下,在給定a與b的人數時,可以組成多少種花樣的塔。

輸入一行兩個整數 m 和 n,空格分開(0例如:

使用者輸入:

1 2程式應該輸出:

3

再例如:

使用者輸入:

3 3程式應該輸出:

4

lq市的市民廣場是乙個多邊形,廣場上鋪滿了大理石的地板磚。

地板磚鋪得方方正正,就像座標軸紙一樣。

以某四塊磚相接的點為原點,地板磚的兩條邊為兩個正方向,一塊磚的邊長為橫縱座標的單位長度,則所有橫縱座標都為整數的點都是四塊磚的交點(如果在廣場內)。

廣場的磚單調無趣,卻給跳廣場舞的市民們提供了絕佳的參照物。每天傍晚,都會有大批市民前來跳舞。

舞者每次都會選一塊完整的磚來跳舞,兩個人不會選擇同一塊磚,如果一塊磚在廣場邊上導致缺角或者邊不完整,則沒人會選這塊磚。

(廣場形狀的例子參考【圖1.png】)

現在,告訴你廣場的形狀,請幫lq市的市長計算一下,同一時刻最多有多少市民可以在廣場跳舞。

【輸入格式】

輸入的第一行包含乙個整數n,表示廣場是n邊形的(因此有n個頂點)。

接下來n行,每行兩個整數,依次表示n邊形每個頂點的座標(也就是說廣場邊緣拐彎的地方都在磚的頂角上。資料保證廣場是乙個簡單多邊形。

【輸出格式】

輸出乙個整數,表示最多有多少市民可以在廣場跳舞。

【樣例輸入】

53 3

6 44 1

1 -1

0 4

【樣例輸出】

7

【樣例說明】

廣場如圖1.png所示,一共有7塊完整的地板磚,因此最多能有7位市民一起跳舞。

【資料規模與約定】

對於30%的資料,n不超過100,橫縱座標的絕對值均不超過100。

對於50%的資料,n不超過1000,橫縱座標的絕對值均不超過1000。

對於100%的資料,n不超過1000,橫縱座標的絕對值均不超過100000000(一億)。

給定乙個 nm 的格點圖,包含 n 行 m 列共 nm 個頂點,相鄰的頂點之間有一條邊。

【圖1.png】給出了乙個3*4的格點圖的例子。

如果在圖中刪除部分頂點和其相鄰的邊,如上圖刪除第2行第3列和第3行第1列的頂點後,如【圖2.png】所示。

圖的生成樹指包含圖中的所有頂點和其中的一部分邊,使得任意兩個頂點之間都有由邊構成的唯一路徑。如果兩個生成樹包含有不同的邊即被認為不同,則上圖中共有31種不同的生成樹,其中a邊不選有10種,a邊選有21種。

給出格點圖中保留的頂點的資訊,請計算該圖一共有多少種不同的生成樹。

【輸入格式】

輸入的第一行包含兩個整數n, m,用空格分隔,表示格點圖的行數和列數。

接下來n行,每行m個字母(中間沒有分隔字元),每個字母必然是大寫e或大寫n,e表示對應的頂點存在,n表示對應的頂點不存在。保證存在至少乙個頂點。

【輸出格式】

輸出一行,包含乙個整數,表示生成樹的個數。答案可能很大,你只需要計算答案除以1000000007的餘數即可。

【樣例輸入】

3 4eeee

eene

neee

【樣例輸出】

31

【資料規模與約定】

對於10%的資料,1<=n<=2。

對於30%的資料,1<=n<=3。

對於40%的資料,1<=n<=4。

對於50%的資料,1<=n<=5。

另有20%的資料,1<=n*m<=12。

另有10%的資料,1<=m<=15。

對於100%的資料,1<=n<=6,1<=m<=100000。

資源約定:

峰值記憶體消耗 < 256m

cpu消耗 < 4500ms

2023年藍橋杯B組C C 決賽題解

三重迴圈 列舉a,b,c的值,如果滿足兩個條件 3個a 7個b 1個c 15 4個a 10個b 1個c 420 就是一組合法的解。輸出a b c就是答案 一開始以為很難,看了題解 都是用dfs暴力搜出來的 國賽第二題永遠是用dfs解決。下面部落格dfs的很完美啊!參考部落格 思路 dfs x,y 正...

藍橋杯 B組 決賽 感悟

其實並不是太想寫這個感悟,雖說沒什麼臉面,但還是有必要寫的,畢竟菜鳥還是得多反思呀。在藍橋盃國賽前一天晚上,自己的 qq 號被盜了,然後 訊息,我手速太慢,好叭,是它發的速度太快了,好多都沒撤回,當時弄得心態很崩.看來遇啥啥不順。在賽場上,其實個人認為做的比較小心,畢竟當時不能判呀,但是還是嗚嗚嗚 ...

2023年藍橋杯C C 組B組第二題

include includeint a 30 int fun1 int num for int j last printf n if getasynckeystate 48 sum if j 29 if go 0 if k 27 a k 0 else if go 1 else if go 2 把剩...