2016 03 20藍橋杯c B組打卡

2021-07-10 15:21:14 字數 3997 閱讀 3694

大一,第一次參加比校賽更大的比賽,這個比賽不像acm那麼正規,比賽時也不嚴,有很多在用手機抄的(至少在我們考場是這樣),先寫一下解題報告。

一:煤球數目

有一堆煤球,堆成三角稜錐形。具體:

第一層放1個,

第二層3個(排列成三角形),

第三層6個(排列成三角形),

第四層10個(排列成三角形),

....

如果一共有100層,共有多少個煤球?

請填表示煤球總數目的數字。

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

**看出規律很簡單,從第二層開始,每層的個數等於上一層加上該層層數.

a[0]=1;

for(int i=1;i<100;i++) a[i]=a[i-1]+i;

二:生日蠟燭

某君從某年開始每年都舉辦一次生日party,並且每次都要吹熄與年齡相同根數的蠟燭。

現在算起來,他一共吹熄了236根蠟燭。

請問,他從多少歲開始過生日party的?

請填寫他開始過生日party的年齡數。

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

**設x歲開始過生日,過到y歲,數學知識得(x+y)*(y-x+1)==236

兩個for迴圈,找到x,y;

(判斷x的值至少得符合實際吧,x得236的真的能做到嗎。。。。)

三:湊算式

b def

a + --- + ------- = 10

c ghi

(如果顯示有問題,可以參見【圖1.jpg】)

這個算式中a~i代表1~9的數字,不同的字母代表不同的數字。

比如:6+8/3+952/714 就是一種解法,

5+3/1+972/486 是另一種解法。

這個算式一共有多少種解法?

注意:你提交應該是個整數,不要填寫任何多餘的內容或說明性文字

直接暴力,九重迴圈(作為一名acmer的我,心裡是拒絕的)

但我得的是29807(不管錯沒錯,反正是迴圈出來的,答案沒出來,我是不會聽他們的!!!)

四:int partition(int a, int p, int r)

______________________;

return j;

}void quicksort(int a, int p, int r)

for(i=0; i<=a[k]; i++){

for(j=0; j

明顯能看出來這是乙個遞迴函式,所以橫線上一定是乙個f函式,四個引數,第乙個,第四個一定是a,b,中間倆代表的是國家數和剩餘人數,每一次,國家數+1,人數-j;

f(a,k+1,m-j,b)話說j==i 減啥都不錯吧。 六;

第六題:

方格填數

如下的10個格仔

(如果顯示有問題,也可以參看【圖1.jpg】)

填入0~9的數字。要求:連續的兩個數字不能相鄰。

(左右、上下、對角都算相鄰)

一共有多少種可能的填數方案?

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

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

純暴力,十重for加上條件判斷(暴力的熟練度都要滿了),數字應該不能重複,一般題都應該這樣吧,即使考場上有疑問,也應該寫乙個可能性大的。 七:

剪郵票如【圖1.jpg】, 有12張連在一起的12生肖的郵票。

現在你要從中剪下5張來,要求必須是連著的。

(僅僅連線乙個角不算相連)

比如,【圖2.jpg】,【圖3.jpg】中,粉紅色所示部分就是合格的剪取。

請你計算,一共有多少種不同的剪取方法。

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

注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。

dfs,可惜我不會,沒出結果。。。。。

八:四平方和

四平方和定理,又稱為拉格朗日定理:

每個正整數都可以表示為至多4個正整數的平方和。

如果把0包括進去,就正好可以表示為4個數的平方和。

比如:5 = 0^2 + 0^2 + 1^2 + 2^2

7 = 1^2 + 1^2 + 1^2 + 2^2

(^符號表示乘方的意思)

對於乙個給定的正整數,可能存在多種平方和的表示法。

要求你對4個數排序:

0 <= a <= b <= c <= d

並對所有的可能表示法按 a,b,c,d 為聯合主鍵公升序排列,最後輸出第乙個表示法

程式輸入為乙個正整數n (n<5000000)

要求輸出4個非負整數,按從小到大排序,中間用空格分開

例如,輸入:

5則程式應該輸出:

0 0 1 2

再例如,輸入:

12則程式應該輸出:

0 2 2 2

再例如,輸入:

773535

則程式應該輸出:

1 1 267 838

三重for迴圈加上窮舉第四個數,優化一下,過個60%資料應該沒問題,不過我腦子一熱寫了4重for了,連樣例三都跑不出來哈哈哈哈。 九:

交換瓶子

有n個瓶子,編號 1 ~ n,放在架子上。

比如有5個瓶子:

2 1 3 5 4

要求每次拿起2個瓶子,交換它們的位置。

經過若干次後,使得瓶子的序號為:

1 2 3 4 5

對於這麼簡單的情況,顯然,至少需要交換2次就可以復位。

如果瓶子更多呢?你可以通過程式設計來解決。

輸入格式為兩行:

第一行: 乙個正整數n(n<10000), 表示瓶子的數目

第二行:n個正整數,用空格分開,表示瓶子目前的排列情況。

輸出資料為一行乙個正整數,表示至少交換多少次,才能完成排序。

例如,輸入:

53 1 2 5 4

程式應該輸出:

3再例如,輸入:

55 4 3 2 1

程式應該輸出:

2暴力換,a[i]!=i的話,將a[i]和i所在的位置的數交換,能過多少我也不知道。。。算一下複雜度,應該沒問題啊。

十:最大比例

x星球的某個大獎賽設了m級獎勵。每個級別的獎金是乙個正整數。

並且,相鄰的兩個級別間的比例是個固定值。

也就是說:所有級別的獎金數構成了乙個等比數列。比如:

16,24,36,54

其等比值為:3/2

現在,我們隨機調查了一些獲獎者的獎金數。

請你據此推算可能的最大的等比值。

輸入格式:

第一行為數字n,表示接下的一行包含n個正整數

第二行n個正整數xi(xi<1 000 000 000 000),用空格分開。每個整數表示調查到的某人的獎金數額

要求輸出:

乙個形如a/b的分數,要求a、b互質。表示可能的最大比例係數

測試資料保證了輸入格式正確,並且最大比例是存在的。

例如,輸入:

31250 200 32

程式應該輸出:

25/4

再例如,輸入:

43125 32 32 200

程式應該輸出:

5/2再例如,輸入:

3549755813888 524288 2

程式應該輸出:

4/1資源約定:

峰值記憶體消耗 < 256m

cpu消耗 < 3000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。

所有**放在同乙個原始檔中,除錯通過後,拷貝提交該原始碼。

不會,沒有思路。。。。。

ps:注意,main函式必須return 0;

程式不能多組輸入;

比賽時還可以,不太緊張,剛開始開局不好,短暫休息一下,思路都來了,兩道**填空也是很nice的寫出來了(剛看時一點思路也沒有)。 

藍橋杯2015 c B組

生命之樹 在x森林裡,上帝建立了生命之樹。他給每棵樹的每個節點 葉子也稱為乙個節點 上,都標了乙個整數,代表這個點的和諧值。上帝要在這棵樹內選出乙個非空節點集s,使得對於s中的任意兩個點a,b,都存在乙個點列 使得這個點列中的每個點都是s裡面的元素,且序列中相鄰兩個點間有一條邊相連。在這個前提下,上...

藍橋杯C B組 帶分數

題目描述 100 可以表示為帶分數的形式 100 3 69258714 還可以表示為 100 82 3546197 注意特徵 帶分數中,數字 1 9 分別出現且只出現一次 不包含 0 類似這樣的帶分數,100 有 11 種表示法。輸入格式 乙個正整數 輸出格式 輸出輸入數字用數碼 1 9 不重複不遺...

藍橋杯省賽c b組 1

藍橋杯省賽挺簡單的,學長說只要做對一道填空題就有省三,然而我拿的就是省三,菜的扣腳!不過,現在才大一,我要努力,加油!接下來寫的是關於藍橋杯省賽的一些題解,有點菜,諒解。題目 一堆煤球,成三角形排列,第一排1個,第二排3個,第三排6個,第四排10個,求第100排有多少煤球。include using...