大一,第一次參加比校賽更大的比賽,這個比賽不像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...