求題大家來幫忙求題大家來幫忙

2021-03-09 00:52:21 字數 9212 閱讀 4873

1樓:愛喝牛奶的

第九屆全國青少年資訊學

奧林匹克聯賽(noip2003)初賽試題

一、單項選擇題

第九界全國青少年資訊學奧林匹克聯賽初賽試題

(提高組 pascal 語言 二小時完成)

●● 全部答案均要寫在答案卷子上,寫在試卷紙上一律無效 ●●

一、單項選擇題 (共10題,每題1.5分,共計15分。每題有且僅有一個正確答案.)。

1. 圖靈 (alan turing) 是 ( )。

a) 美國人 b) 英國人 c) 德國人 d) 匈牙利人 e) 法國人

2. 第一個給計算機寫程式的人是( )。

a) alan mathison turing b) ada lovelace c) john von neumann

d) john mc-carthy e) edsger wybe dijkstra

3. 十進位制數2003等值於二進位制數( )。

a) 0100000111 b) 10000011 c) 110000111 d) 11111010011 e) 1111010011

4. 假設a=true,b=false,c=ture,d=ture,邏輯運算表示式a∧b∨c∧d的值是( )。

a) ture b) false c) 0 d) 1 e) null

5. 一個高度為h 的二叉樹最小元素數目是( )。

a) 2h+1 b) h c) 2h-1 d) 2h e) 2h-1

6. 已知佇列(13,2,11,34,41,77,5,7,18,26,15),第一個進入佇列的元素是13,則第五個出佇列的元素是( )。

a) 5 b) 41 c) 77 d) 13 e) 18

7. 下面一段程式是用( )語言書寫的。

int func1(int n)

a) fortran b) pascal c) c d) prolog e) basic

8. 設全集e=,集合a=,b=,c=,則集合(a ∩b)∪~c 為( )。

a) 空集 b) c) d) e)

9. 表示式(1+34)*5-56/7 的字尾表示式為( )。

a) 1+34*5-56/7 b) -*+1 34 5/56 7 c) 1 34 +5*56 7/-

d) 1 34 5* +56 7/- e) 1 34+5 56 7-*/

10. 下列計算機裝置,即是輸入裝置,又是輸出裝置的是( )。

a) 鍵盤 b) 觸控式螢幕 c) 掃描器 d)投影儀 e) 數字化儀

二、不定項選擇題

二、不定項選擇題(共10題,每題1.5分,共計15分。多選少選均不得分)。

11. 下列解析度的顯示器顯示出的影象,最清晰的是( )。

a) 800*600 b) 1024*768 c) 640*480 d) 1280*1024 e) 800*1000

12. 下列說法中,哪個(些)是錯誤的( )。

a)程式是指令的序列,它有三種結構:順序、分支和迴圈。

b)資料匯流排決定了**處理器cpu所能訪問的最大記憶體空間的大小。

c)**處理器cpu內部有暫存器組,用來儲存資料。

d)不同廠家生產的cpu所能處理的指令集是相同的。

e)資料傳輸過程中可能會出錯,奇偶校驗法可以檢測出資料中那一為在傳輸中出了差錯。

13. cpu訪問記憶體的速度比訪問下列哪個(些)儲存裝置要慢( )。

a)暫存器 b)硬碟 c)軟盤 d)快取記憶體 e)光碟

14. 下列電子郵件地址,哪個(些)是正確的( )。

15. 數字影象檔案可以用下列哪個(些)軟體來編輯( )。

a)畫筆(paintbrush) b)記事薄(notepad) c) photoshop d) winrar e)midisoft

16. 下列哪個(些)軟體不是作業系統軟體的名字( )。

a)windowsxp b) dos c) linux d) os/2 e) arch/info

17. 下列哪個(些)不是個人計算機的硬體組成部分( )。

a)主機板 b)虛擬記憶體 c)電源 d)硬碟 e)匯流排

18. 運算試(2008)10-(3723)8 的結果是( )。

a)(-1715)10 b) (5)10 c) (5)16 d) (101)2 e) (3263)8

19. 已知元素(8,25,14,87,51,90,6,19,20),問這些元素以怎樣的順序進入棧,才能使出棧的順序滿足:8在51前面;90在87的後面;20在14的後面;25在6的前面;19在90的後面。

( )。

a)20,6,8,51,90,25,14,19,87

b)51,6,19,20,14,8,87,90,25

c)19,20,90,7,6,25,51,14,87

d)6,25,51,8,20,19,90,87,14

e)25,6,8,51,87,90,19,14,20

20. 假設我們用d=(a1,a2,…,a5),表示無向圖g的5個頂點的度數,下面給出的哪(些)組d 值合理( )。

a) b) c)

d) e)

三、問題求解

三、問題求解(共2題,每題5分,共計10分)

1. 無向圖g有16條邊,有3個4度頂點、4個3度頂點,其餘頂點的度均小於3,則g至少_______個頂點。

2. 某年級學生共選修6門課程,期末考試前,必須提前將這6門課程考完,每人每天只在下午至多考一門課程,設6門課程為c1,c2,c3,c4,c5,c6,s(ci)為學習ci 的學生集合。已知s(ci)∩s(c6)≠ф,i=1,2,…,5,s(ci)∩s(ci+1)≠ф,i=1,2,3,4,s(c5)∩s(c1)≠ф,問至少安排_____天才能考完這6門課程。

四. 閱讀程式

四.閱讀程式(共4題,每題8分,共計32分)

1. program program1;

var a,b,c,d,sum : longint;

begin

read(a,b,c,d);

a := a mod 23; b := b mod 28; c := c mod 33;

sum := a * 5544 + b * 14421 + c * 1228 – d;

sum := sum + 21252; sum := sum mod 21252;

if (sum = 0 ) then sum := 21252;

writeln(sum);

end.

輸入:283 102 23 320 輸出____________

2. program program2;

const

u : array[1..4] of integer = (0,5,3,1);

v : array[1..4] of integer = (0,7,6,5);

var a,b,c,d,e,f,x,y,z: integer;

begin

read(a,b,c,d,e,f);

z := f+ e + d + (c+3) div 4; y := 5 * d + u[c mod 4];

if (b > y) then

begin

z := z + (b – y + 8) div 9;

x := ((b – y + 8) div 9 * 9 –(b – y)) * 4 + 11 * e + v[c mod 4];

endelse

x := (y – b) * 4 + 11 * e + v[c mod 4];

if (a > x) then

z := z + (a – x + 35) div 36;

writeln(z)

end.

輸入: 4 7 9 20 56 47 輸出____________________

3. program program3;

var m,n: integer; mark: boolean;

function test(m,n:integer):integer;

var i,p: integer; flag: boolean;

begin

m := m – 1; i := 0; flag := false;

for p:= 2*n downto (n+1) do

begin

i:= (i+m) mod p;

if (i0) then

a[m]:=p[i]-p[i-1]

else

a[m]:=p[i];

m:=m+1;

while ((m>1) and (a[m-1]=0)) do

begin m:=m-1; b[m]:=1; end;

if (m>0) then

w[i]:=b[m-1];

else

w[i]:=b[0];

a[m-1]:=a[m-1]-1;

for j:=0 to m-1 do b[j]:=b[j]+1;

while ((m>1) and (a[m-1]=0)) do

begin

m:=m-1; b[m]:=1;

end;

end;

for i:= 0 to n-1 do

begin

write(w[i]); write(' ');

end;

writeln(' ');

end.

輸入:9

4 6 6 6 6 8 9 9 9 9

輸出:____________________

五. 完善程式—1、翻硬幣

五. 完善程式(共2題,第1題每空3分;第2題每空2分。共計28分)。

1. 翻硬幣

題目描述:

一摞硬幣共有m枚,每一枚都是正面朝上。取下最上面的一枚硬幣,將它翻面後放回原處。然後取下最上面的2枚硬幣,將他們一起翻面後放回原處。

在取3枚,取4枚……直至m枚。然後在從這摞硬幣最上面的一枚開始,重複剛才的做法。這樣一直做下去,直到這摞硬幣中每一枚又是正面朝上為止。

例如,m為1時,翻兩次即可。

輸 入:僅有的一個數字是這摞硬幣的枚數m ,0< m <1000。

輸 出:為了使這摞硬幣中的每一枚都是朝正面朝上所必須翻的次數。

輸入樣例:30

輸出樣例:899

程 序:

program program1;

var m:integer;

function solve(m: integer):integer;

var i,t,d: integer;

flag: boolean;

begin

if (m = 1) then

solve := (1)

else begin

d := 2*m+1; t := 2; i := 1; flag := false;

repeat

if (t = 1) then

begin

solve := (2) ; flag := true;

endelse if ( (3) ) then

begin

solve := i*m-1; flag := true;

endelse

t := (4) ;

i:=i+1;

until flag;

endend;

begin

read(m); if (( (5) ) and (m<1000)) then

writeln( (6) );

end.

五. 完善程式—2、oim地形

2. oim地形

題目描述:

二維離散世界有一種地形叫oim(oi mountain)。這種山的坡度只能上升('/')或下降('\'),而且兩邊的山腳都與地平線等高,山上所有地方都不低於地平線.例如:

/\ /\

/ \/\ 是一座oim;而 / \ 不是。

\/這個世界的地理學家們為了方便紀錄,給oim所有可能的形狀用正整數編好號,而且每個正整數恰好對應一種山形。他們規定,若兩座山的寬度不同,則較寬的編號較大;若寬度相同,則比較從左邊開始第1個坡度不同的地方,坡度上升的編號較大。以下三座oim的編號有小到大遞增:

/\ /\ /\ /\

/ \/\ / \/\/\ / \/ \。顯然/\的編號為1。但是地理學家在整理紀錄是發覺,查詢編號與山形的對應關係不是很方便。

他們希望能快速地從編號得到山的形狀。你自告奮勇答應他們寫一個程式,輸入編號,能馬上輸出山形。

輸 入:一個編號(編號大小不超過600,000,000),

輸 出:輸入編號所對應的山形,1座山所佔行數恰為它的高度,即山頂上不能有多餘空行。

輸入樣例:15

輸出樣例: /\ /\

/ \/ \

程 序:

program program2;

const

l:integer =19; sz: integer =50;

up: char = '/'; dn: char = '\';

vari,nth,x,y,h,e,f:integer;

m: array[0..1,0..38,0..19] of integer;

pic: array[0..49,0..49] of char;

procedure init;

var k,s,a,b,c: integer;

begin

for a:=0 to 1 do

for b:=0 to 2*l do

for c:=0 to l do

m[a,b,c]:=0; m[0,0,0]:=1;

for k:=0 to 2*l-1 do

begin

for s:=1 to l do

begin

m[0,k+1,s] := m[0,k,s+1] + m[1,k,s+1];

m[1,k+1,s]:= (1) ;

end;

m[0,k+1,0] :=m[0,k,1]+m[1,k,1];

end;

end;

procedure draw(k,s,nth:integer);

begin

if (k=0) then exit;

if ((nth-m[1,k,s])>=0) then

begin

nth:=nth-m[1,k,s];

if (y>h) then (2) ;

pic[y,x]:=up; y:=y+1; x:=x+1; draw( (3) );

endelse begin

y:=y – 1; pic[y,x]:=dn; x:=x+1; draw(k-1,s-1,nth);

end;

end;

begin

init;

read(nth);

for e:=0 to sz-1 do

for f:=0 to sz-1 do

pic[e,f]:= ' ';

x:=0;

y:=0

h:=0;

i:=0;

while ((nth-m[0,2*i,0])>=0) do

begin

nth:= nth-m[0,2*i,0];

(4) ;

end;

draw( (5) );

for i:=h downto x-1 do

begin

for e:=0 to x-1 do

write(pic[i,e]);

writeln(' ');

end;

end.

參***

一、單選10題 每題1.5分

b b d a b

b c e c b

二、不定項選擇10題 每題1.5分

d bde ad ab ac

e b bcd d be

三、問題求解 每題5分

1.答:11

2.答:4

四、閱讀程式 每題8分

1. 8910

2. 126

3. 1872

4. 1 1 2 4 5 1 1 3 9 (空格分隔)

五、完善程式

題一(1)2

(2)i*m

(3)t=2*m

(4)(t*2) mod d

(5)m>0

(6)solve(m)

題二 oim

(1)m[0,k,s-1]+m[1,k,s-1]

(2)h:=y

(3)k-1,s+1,nth

(4)i:=i+1

(5)2*i,0,nth

來自官方的參考解答,部分題目有可能存在其他正確解答。

各位選手可以自己估分,以上答案為紅色部分難度較大,正確率極低,一般選手正常發揮得分在55~65之間,最高得分估計不超過85分。

求大家幫忙做數學題,求幫忙做數學題

1 解 設藍色紐扣x個,則紅色紐扣是3x 8個,綠色紐扣x 1個 有 x 3x 8 x 1 312 解出 藍色x 61,所以紅色3x 8 191,綠色x 1 60 答 2 設有x人,所以宿舍是x 10 每間住1人,有10人無處住 有x 3 10 x 10 解出 人數x 30,宿舍x 10 20 答 ...

英語題 猜字迷和翻譯句子 大家來幫忙 急

1.hear 2.were 3.hope 4.hour 5.dairy 6.clean 7.game 8.left right 9.girl 10.一個狡猾的動物 11.玩狐狸 1,do 2,were 3,think 4,hour 7,at 9,baby 10,fox 11,jack in the ...

大家來幫忙,不勝感激,大家來幫忙推薦一款本本,不勝感激

老實說,人都是想往好的方向發展.那個女的也不是做錯什麼,只是如果她看你好了要回來,那麼你也應該看清楚她了,除非你很愛她,愛到寧願這樣和她一起.不然的話,這樣的感情你覺得她是認真喜歡你還是喜歡你的錢.這樣的女人堅決不能要 努力工作吧 到時候她要來纏你,你就否決他,給他一個教訓,這種爛女人應該要給他教訓...