第五藍(lán)橋杯預(yù)賽題目及答案_第1頁
第五藍(lán)橋杯預(yù)賽題目及答案_第2頁
第五藍(lán)橋杯預(yù)賽題目及答案_第3頁
第五藍(lán)橋杯預(yù)賽題目及答案_第4頁
第五藍(lán)橋杯預(yù)賽題目及答案_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第五藍(lán)橋杯預(yù)賽題目及答案作者:日期:2014年第五屆藍(lán)橋杯預(yù)賽題目第一題標(biāo)題:啤酒和飲料啤酒每罐2.3元,飲料每罐1.9元。小明買了若干啤酒和飲料,一共花了 82.3元。我們還知道他買的啤酒比飲料的數(shù)量少,請你計算他買了幾罐啤酒。注意:答案是一個整數(shù)。請通過瀏覽器提交答案。不要書寫任何多余的內(nèi)容(例如:寫了飲料的數(shù)量,添加說明文字等)。第二題標(biāo)題:切面條一根高筋拉面,中間切一刀,可以得到2根面條。如果先對折1次,中間切一刀,可以得到3根面條。如果連續(xù)對折2次,中間切一刀,可以得到5根面條。那么,連續(xù)對折10次,中間切一刀,會得到多少面條呢?答案是個整數(shù),請通過瀏覽器提交答案。不要填寫任何多余的

2、內(nèi)容。第三題標(biāo)題:李白打酒話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家里出來,酒壺中有酒 2斗。他邊走邊唱:無事街上走,提壺去打酒。逢店加一倍,遇花喝一斗。這一路上,他一共遇到店 5次,遇到花10次,已知最后一次遇到的是花,他正好把酒 喝光了。請你計算李白遇到店和花的次序,可以把遇店記為 a,遇花記為bo則:babaabbabbabbbb就是合理的次序。像這樣的答案一共有多少呢?請你計算出所有可能方案的個數(shù)(包含題目給出的)。注意:通過瀏覽器提交答案。答案是個整數(shù)。不要書寫任何多余的內(nèi)容。第四題標(biāo)題:史豐收速算史豐收速算法的革命性貢獻(xiàn)是:從高位算起,預(yù)測進(jìn)位。不需要九九表,

3、徹底顛覆了傳統(tǒng)手算!速算的核心基礎(chǔ)是:1位數(shù)乘以多位數(shù)的乘法。其中,乘以7是最復(fù)雜的,就以它為例。因為,1/7是個循環(huán)小數(shù):0.142857,如果多位數(shù)超過142857,就要進(jìn)1同理,2/7, 3/7, . 6/7也都是類似的循環(huán)小數(shù),多位數(shù)超過n/7,就要進(jìn)n下面的程序模擬了史豐收速算法中乘以7的運算過程。乘以7的個位規(guī)律是:偶數(shù)乘以2,奇數(shù)乘以2再加5,都只取個位。乘以7的進(jìn)位規(guī)律是:滿142857進(jìn)1,滿285714進(jìn)2,滿428571進(jìn)3,滿571428進(jìn)4,滿714285進(jìn)5,滿 857142.進(jìn) 6請分析程序流程,填寫劃線部分缺少的代碼。241876844562801計算個位int

4、 ge_wei(int a)if(a % 2 = 0)return (a * 2) % 10;elsereturn (a * 2 + 5) % 10;計算進(jìn)位int jin_wei(char* p)char* level口 = “142857”,“285714”, "428571", "571428", "714285", "857142";char buf7;buf6 = '0'strncpy(buf,p,6);int i;for(i=5; i>=0; i-)int r = strcmp(l

5、eveli, buf); if(r<0) return i+1;while(r=0)p += 6;strncpy(buf,p,6);r = strcmp(leveli, buf); if(r<0) return i+1;填空return 0;多位數(shù)乘以7void f(char* s)int head = jin_wei(s);if(head > 0) printf("%d", head);char* p = s;while(*p)int a = (*p-'0');int x = (ge_wei(a) + jin_wei(p+1) % 10;

6、printf("%d",x);p+;printf("n");int main()f("428571428571");f("34553834937543");return 0;注意:通過瀏覽器提交答案。只填寫缺少的內(nèi)容,不要填寫任何多余的內(nèi)容(例如:說明性 文字)第五題標(biāo)題:打印圖形小明在X星球的城堡中發(fā)現(xiàn)了如下圖形和文字:rank=3* *章 才* * ¥ *rank=58 / 32ran=6小 t * + + 中+ 東 非器* *配卡址*布* *相;*!*緊*象 *東配配4*:水+ *小小木+ + +

7、+*隼* *:/*i !K¥+ *辛 率* * * *+*比 *:比寺*北* + , * +奉辛* *邛* 華*¥*4 *小辛* * * * *+小市 水木密小水+ +* * * * * 濫*小明開動腦筋,編寫了如下的程序,實現(xiàn)該圖形的打印。#define N 70void f(char a口N, int rank, int row, int col)if(rank=1)arowcol = '*'return;int w = 1;int i;for(i=0; i<rank-1; i+) w *= 2;f(a, rank-1, row+w/2, col)

8、;f(a, rank-1, row+w/2, col+w);int main()char aNN;int i,j;for(i=0;i<N;i+)for(j=0;j<N;j+) aij=''f(a,6,0,0);for(i=0; i<N; i+)for(j=0; j<N; j+) printf("%c",aij);printf("n");return 0;請仔細(xì)分析程序邏輯,填寫缺失代碼部分。通過瀏覽器提交答案。注意不要填寫題目中已有的代碼。也不要寫任何多余內(nèi)容(比如說明性的文字)第六題標(biāo)題:奇怪的分式上小學(xué)的時候,

9、小明經(jīng)常自己發(fā)明新算法。一次,老師出的題目是:1/4乘以8/5小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (參見圖1.png)老師剛想批評他,轉(zhuǎn)念一想,這個答案湊巧也對啊,真是見鬼!對于分子、分母都是 19中的一位數(shù)的情況,還有哪些算式可以這樣計算呢?請寫出所有不同算式的個數(shù)(包括題中舉例的)。顯然,交換分子分母后,例如: 4/1乘以5/8是滿足要求的,這算做不同的算式。但對于分子分母相同的情況,2/2乘以3/3這樣的類型太多了,不在計數(shù)之列注意:答案是個整數(shù)(考慮對稱性,肯定是偶數(shù))。請通過瀏覽器提交。不要書寫多余的內(nèi)容。LS直嘍去井接分子,分母. 也可以完成計算?第七題

10、標(biāo)題:六角填數(shù)如圖【l.png】所示六角形中,填入112的數(shù)字。使得每條直線上的數(shù)字之和都相同。圖中,已經(jīng)替你填好了 3個數(shù)字,請你計算星號位置所代表的數(shù)字是多少?第八題標(biāo)題:螞蟻感冒長100厘米的細(xì)長直桿子上有 n只螞蟻。它們的頭有的朝左,有的朝右。每只螞蟻都只能沿著桿子向前爬,速度是1厘米/秒。當(dāng)兩只螞蟻碰面時,它們會同時掉頭往相反的方向爬行。這些螞蟻中,有1只螞蟻感冒了。并且在和其它螞蟻碰面時,會把感冒傳染給碰到的螞蟻。請你計算,當(dāng)所有螞蟻都爬離桿子時,有多少只螞蟻患上了感冒?!緮?shù)據(jù)格式】第一行輸入一個整數(shù) n (1 < n < 50),表示螞蟻的總數(shù)。接著的一行是n個用空格

11、分開的整數(shù) Xi (-100 < Xi < 100), Xi的絕對值,表示螞蟻離開 桿子左邊端點的距離。正值表示頭朝右,負(fù)值表示頭朝左,數(shù)據(jù)中不會出現(xiàn) 0值,也不會出現(xiàn)兩只螞蟻占用同一位置。其中,第一個數(shù)據(jù)代表的螞蟻感冒了。要求出1個整數(shù),表示最后感冒螞蟻的數(shù)目。例如,輸入:35-2 8程序應(yīng)輸出:1再例如,輸入:5-10 8 -20 12 25程序應(yīng)輸出:3資源約定:峰值內(nèi)存消耗 < 256MCPU 消耗 < 1000ms請嚴(yán)格按要求輸出,不要畫蛇添足地打印類似:“請您輸入”的多余內(nèi)容。所有代碼放在同一個源文件中,調(diào)試通過后,拷貝提交該源碼。注意:main函數(shù)需要返回

12、0注意:只使用ANSI C/ANSI C+ 標(biāo)準(zhǔn),不要調(diào)用依賴于編譯環(huán)境或操作系統(tǒng)的特殊函數(shù)。注意:所有依賴的函數(shù)必須明確地在源文件中#include <xxx> ,不能通過工程設(shè)置而省略常用頭文件。提交時,注意選擇所期望的編譯器類型。第九題標(biāo)題:地宮取寶X國王有一個地宮寶庫。是 n x m個格子的矩陣。每個格子放一件寶貝。每個寶貝貼 著價值標(biāo)簽。地宮的入口在左上角,出口在右下角。小明被帶到地宮的入口,國王要求他只能向右或向下行走。走過某個格子時,如果那個格子中的寶貝價值比小明手中任意寶貝價值都大,小明就可以拿起它(當(dāng)然,也可以不拿)。當(dāng)小明走到出口時,如果他手中的寶貝恰好是k件,

13、則這些寶貝就可以送給小明。請你幫小明算一算,在給定的局面下,他有多少種不同的行動方案能獲得這k件寶貝?!緮?shù)據(jù)格式】輸入一行3個整數(shù),用空格分開:n m k (1<=n,m<=50, 1<=k<=12)接下來有n行數(shù)據(jù),每行有 m個整數(shù)Ci (0<=Ci<=12)代表這個格子上的寶物的價值要求輸出一個整數(shù),表示正好取k個寶貝的行動方案數(shù)。該數(shù)字可能很大,輸出它對1000000007取模的結(jié)果。例如,輸入:2 2 21 22 1程序應(yīng)該輸出:2再例如,輸入:2 3 21 2 32 1 5程序應(yīng)該輸出:14資源約定:峰值內(nèi)存消耗 < 256MCPU 消耗 &

14、lt; 1000ms請嚴(yán)格按要求輸出,不要畫蛇添足地打印類似:“請您輸入”的多余內(nèi)容。所有代碼放在同一個源文件中,調(diào)試通過后,拷貝提交該源碼。注意:main函數(shù)需要返回0注意:只使用ANSI C/ANSI C+ 標(biāo)準(zhǔn),不要調(diào)用依賴于編譯環(huán)境或操作系統(tǒng)的特殊函數(shù)。注意:所有依賴的函數(shù)必須明確地在源文件中#include <xxx> ,不能通過工程設(shè)置而省略常用頭文件。提交時,注意選擇所期望的編譯器類型。第十題標(biāo)題:小朋友排隊n個小朋友站成一排?,F(xiàn)在要把他們按身高從低到高的順序排列,但是每次只能交換位置相鄰的兩個小朋友。每個小朋友都有一個不高興的程度。開始的時候,所有小朋友的不高興程度

15、都是0。如果某個小朋友第一次被要求交換,則他的不高興程度增加 1,如果第二次要求他交換,則他的不高興程度增加 2(即不高興程度為 3),依次類推。當(dāng)要求某個小朋友第 k次交換時, 他的不高興程度增加 ko請問,要讓所有小朋友按從低到高排隊,他們的不高興程度之和最小是多少。如果有兩個小朋友身高一樣,則他們誰站在誰前面是沒有關(guān)系的?!緮?shù)據(jù)格式】輸入的第一行包含一個整數(shù)n,表示小朋友的個數(shù)。第二行包含n個整數(shù)H1 H2Hn,分別表示每個小朋友的身高。 輸出一行,包含一個整數(shù),表示小朋友的不高興程度和的最小值。例如,輸入:33 2 1程序應(yīng)該輸出:9【樣例說明】對于對于對于對于10%的數(shù)據(jù),30%的數(shù)

16、據(jù),50%的數(shù)據(jù),100%的數(shù)據(jù),首先交換身高為3和2的小朋友,再交換身高為 3和1的小朋友,再交換身高為 2和1 的小朋友,每個小朋友的不高興程度都是3,總和為9。1<=n<=10 ;1<=n<=1000 ;1<=n<=10000 ;1<=n<=100000 , 0<=Hi<=1000000 。資源約定:峰值內(nèi)存消耗 < 256MCPU 消耗 < 1000ms請嚴(yán)格按要求輸出,不要畫蛇添足地打印類似:“請您輸入”的多余內(nèi)容。所有代碼放在同一個源文件中,調(diào)試通過后,拷貝提交該源碼。注意:main函數(shù)需要返回0注意:只使用A

17、NSI C/ANSI C+ 標(biāo)準(zhǔn),不要調(diào)用依賴于編譯環(huán)境或操作系統(tǒng)的特殊函數(shù)。注意:所有依賴的函數(shù)必須明確地在源文件中#include <xxx> ,不能通過工程設(shè)置而省略常用頭文件。提交時,注意選擇所期望的編譯器類型。參考答案1#include <cstdio>using namespace std;int main()for(int i = 1; i * 2.3 <= 82.3; i+)for(int j = i + 1; i * 2.3 + j * 1.9 <= 82.3; j+)if(i * 2.3 + j * 1.9 >= 82.3 - 0.

18、000001 && i * 2.3 + j * 1.9 <=82.3 + 0.000001)printf("%d %d'n", i, j);return 0;2#include <cstdio>using namespace std;int main()int num = 2;for(int i = 1; i <= 10; i+)num = num * 2 - 1;printf("%d: %dn", i, num);return 0;3#include <cstdio>using namespa

19、ce std;int sum = 0;char str100;int Fun(int now, int i, int a, int b)if(now < 0 | i > 16 | (now = 0 && i < 16)return 0;if(now = 0)if(i = 16 && a = 5 && b = 10)sum+;for(int j = 0; j < 15; j+) putchar(strj);putchar(10);stri - 1 = 'a'Fun(now * 2, i + 1, a + 1,

20、 b);stri -1 = 'b'Fun(now - 1, i + 1, a, b + 1);int main()str15 = '0'Fun(2, 1,0, 0);printf("sum = %dn", sum);return 0;4 #include <stdio.h> #include <string.h>計算個位int ge_wei(int a)if(a % 2 = 0)return (a * 2) % 10;elsereturn (a * 2 + 5) % 10;計算進(jìn)位int jin_wei(char* p

21、)char*level口“142857”,"285714”,"428571”,"571428”,"714285”,"857142"char buf7;buf6 = '0'strncpy(buf,p,6);int i;for(i=5; i>=0; i-)int r = strcmp(leveli, buf);if(r<0) return i+1;while(r=0)p += 6;strncpy(buf,p,6);r = strcmp(leveli, buf);if(r<0) return i+1;els

22、e if(r = 0) return i; / 填空return 0;多位數(shù)乘以7void f(char* s)int head = jin_wei(s);if(head > 0) printf("%d", head);char* p = s;while(*p)int a = (*p-'0');int x = (ge_wei(a) + jin_wei(p+1) % 10;printf("%d",x);P+;printf("n");int main()f("428571428571");f(&q

23、uot;142857");f("142857142856");return 0;5#include <stdio.h>#define N 70void f(char a口N, int rank, int row, int col)if(rank=1)arowcol = '*'return;int w = 1;int i;for(i=0; i<rank-1; i+)w *= 2;f(a, rank - 1, row, col + w / 2);f(a, rank-1, row+w/2, col);f(a, rank-1, row+w

24、/2, col+w);int main()char aNN;int i,j;for(i=0;i<N;i+)for(j=0;j<N;j+)a皿=''f(a,6,0,0);for(i=0; i<N; i+)for(j=0; j<N; j+)printf("%c",aij);printf("n");return 0;6#include <cstdio>using namespace std;int sum = 0;int main()for(int a = 1; a <= 9; a+)22 / 32fo

25、r(int b = 1; b <= 9; b+) for(int c = 1; c <= 9; c+)for(int d = 1; d <= 9; d+)if(a = b && c = d)continue;int na = a * 10 + c, nb = b * 10 + d;if(a * 1.0 / b * c * 1.0 / d >= na * 1.0 / nb - 0.000001 &&a * 1.0 / b * c * 1.0 / d <= na * 1.0 / nb + 0.000001)printf("%d

26、/%d * %d/%d = %d/%dn", a, b, c, d, na, nb);sum+;printf("sum = %d", sum);return 0;7#include <cstdio>using namespace std;int arr15, have15;int Fun(int i)if(i = 13)int result6;result0 = arr1 + arr2 + arr3 + arr4, result1 = arr4 arr5 + arr6 + arr7;result2 = arr7 + arr8 + arr9 + arr1

27、, result3 = arr10 +arr3 + arr5 + arr11;result4 = arr11 + arr6 + arr8 + arr12, result5 = arr12 + arr9 + arr2 + arr10;int end = 1;25 / 32for(int m = 0; m < 6; m+)for(int n = m + 1; n < 6; n+) if(resultm != resultn)end = 0;if(end)for(int i = 1; i <= 12; i+) printf("%d ", arri);putcha

28、r(10);for(int i = 1; i <= 12; i+)printf("%d ", havei);putchar(10);getchar();if(i = 1 | i = 7 | i = 10)Fun(i + 1);if(!(i = 1 | i = 7 | i = 10)for(int j = 1; j <= 12; j+)if(!havej)arri = j;havej = 1;Fun(i + 1);havej = 0;int main()arr1 = 8; arr7 = 3; arr10 = 1;have1 = have3 = have8 = 1;

29、Fun(1);return 0;8#include <cstdio>#include <cmath> using namespace std;struct Tint drec, flag;;T arr100;int size = 0;int main()int n, t;scanf("%d", &n);for(int i = 0; i < n; i+)scanf("%d", &t);if(i = 0)arr0.flag = 1;arrsize+.drec = t;int sum = 1, nowHave =

30、n;while(nowHave > 0)for(int i = 0; i < size; i+)if(arri.drec > 0)arri.drec += 1;elsearri.drec += 1;if(abs(arri.drec) < 0 | abs(arri.drec) > 100) nowHave-;for(int i = 0; i < size; i+)for(int j = i + 1; j < size; j+)if(abs(arrj.drec) = abs(arri.drec)if(arri.flag = 1 | arrj.flag =

31、1)if(arri.flag + arrj.flag = 1) sum+;arri.flag = arrj.flag = 1;arrj.drec = 0 - arrj.drec;arri.drec = 0 - arri.drec;29 / 32printf("%d", sum);return 0;9#include <cstdio> #include <cmath> #include <algorithm>#include <cstring>using namespace std;int map5555;int n, m, k

32、, sum = 0;int DFS(int x, int y, int big, int nowHave)if(nowHave > k)return 0;if(x = n && y = m)if(nowHave = k | nowHave = k - 1 && mapnm > big)sum+;30 / 32sum %= 1000000007;if(x + 1 <= n)if(mapxy > big)DFS(x + 1, y, mapxy, nowHave + 1);DFS(x + 1, y, big, nowHave);if(y + 1 <= m)if(mapxy > big)DFS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論