版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、ACM程序設(shè)計(jì)與競(jìng)賽作業(yè).采藥.金字塔問(wèn)題3毛毛蟲問(wèn)題. Hamming Problem.字符串正反連接.去掉空格.成績(jī)轉(zhuǎn)換.金塊問(wèn)題9工資問(wèn)題.“水仙花數(shù)”問(wèn)題.大小寫轉(zhuǎn)換.取數(shù)游戲.整除問(wèn)題.警察抓小偷.n!.漢諾塔問(wèn)題.猴子吃桃問(wèn)題(遞歸). A4-B for Input-Output Practice . A+B for Input-Output Practice (EQ. A+B for Input-Output Practice (HI). A+B for Input-Output Practice (TV)For each three prime numbers pl, p2 a
2、nd p3, let*s define Hamming sequence Hi(pl, p2, p3), i=l,. as containing in increasing order all the natural numbers whose only prime divisors are pl, p2 or p3.For example, H(2, 3, 5) = 2, 3, 4, 5, 6, 8, 9, 10,12,15,16,18, 20, 24, 25, 27,.So H5(2, 3, 5)=6.輸入In the single line of input file there are
3、 space-separated integers pl p2 p3 i.輸出The output file must contain the single integer - Hi(pl, p2, p3). All numbers in input and output are less than 1CT18.樣例輸入樣例輸出6#include stdio.hint minx(int pl,int p2,int p3)/ 定義有參函數(shù) minx;|int min二pl;if(p2min)min=p2;min=p3;return min;求pl,p2,p3的最小值;int mainQ(int
4、pl,p2,p3,t,i;int a,b,c;char num 10000;scanf(%d%d%d%dn,&pl,&p2,&p3,&t);a=b=c=0;num0 = 1;for(i=l;i=t;i+4-)numi=minx(pl*numa,p2*numb,p3*num|c);/調(diào)用 minx 函數(shù);if(numi=pl*numa)a+;if(numi=p2*numb)b+;if(numi=p3*numc)c+;求所有的能被pl,p2,p3整除口勺數(shù);printf(H%dnn,numt);return 0;心得:運(yùn)用動(dòng)態(tài)規(guī)劃的思想,定義一種一維數(shù)組,把所有符合條件的數(shù)按次序存進(jìn) 一維數(shù)組中,
5、這個(gè)編程運(yùn)用了函數(shù)調(diào)用日勺措施求三個(gè)數(shù)日勺最小值,然后把這個(gè)最小 值存進(jìn)一維數(shù)組中,每次存進(jìn)一種數(shù),下次都會(huì)用存進(jìn)去H勺這個(gè)數(shù)求解下一種數(shù), 進(jìn)行循環(huán)。5問(wèn)題B:字符串正反連接時(shí)間限制:1 See內(nèi)存限制:128 MB提交:68處理:42網(wǎng)口題目描述所給字符串正序和反序連接,形成新串并輸出輸入任意字符串(長(zhǎng)度V二50)輸出字符串正序和反序連接所成的新字符串樣例輸入123abe樣例輸出123abccba321#include#includevoid mainQchar a50;定義一種字符串;int i,f;while(scanf(”%s”,&a)!=EOF) 實(shí)現(xiàn)多行實(shí)例輸入;(f=strlc
6、n(a);把字符串口勺長(zhǎng)度值賦給f;for(i=0;i=0;i)(print/%心叫);/把字符串反序輸出;printf(,nH);)心得:定義一種字符串,運(yùn)用strlenO函數(shù)獲取字符串的長(zhǎng)度值f,首先用for循環(huán), 把這個(gè)字符串正序輸出,然后再用for循環(huán)對(duì)這個(gè)字符串進(jìn)行反序輸出,這里重要考 察了輸入輸出。6問(wèn)題C:去掉空格時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:27處理:4DDD題目描述讀入某些字符串,將其中的空格去掉。輸入輸入為多行,每行為一種字符串,字符串只由字母、數(shù)字和空格構(gòu)成,長(zhǎng)度不超過(guò)80o輸入以End of file結(jié)束。輸出對(duì)于每行輸入,輸出轉(zhuǎn)換后的字符串。樣例輸入
7、Hello World 1 23Nice to meet youJabc樣例輸出HelloWorld 123Nicetomeetyou abc提醒 用scanf是不能讀入一行有空格的字符串日勺,用gets吧。用“gets(str) !二NULL”可 以判斷輸入與否結(jié)束,假如此條件為假(即gets(str) = NULL),那么表達(dá)輸入結(jié)束(對(duì) 于此題)。#include#includcvoid rnainQint i,f;char a90;定義一種字符串;while(gets(a)!=NULL)f=strlcn(a);把字符串的長(zhǎng)度值賦給f;for(i=0;if;i+)(printf(”c”閔
8、i+1);/去掉空格; i=i+l;)elseprintf(c”,ai);沒(méi)有空格,直接輸出;printf(nnM);心得:這里也是重要考察輸入輸出問(wèn)題,首先也是定義了一種字符串,用strlenO函 數(shù)獲得字符串的長(zhǎng)度K進(jìn)行f次循環(huán),判斷這個(gè)字符串與否有空格?假如有把數(shù)組 中的每個(gè)數(shù)往后進(jìn)一位,即去點(diǎn)空格,假如沒(méi)有直接輸出。7問(wèn)題D:成績(jī)轉(zhuǎn)換時(shí)間限制:1 See內(nèi)存限制:128 MB提交:78處理:30網(wǎng)口題目描述輸入一種百分制的成績(jī)3將其轉(zhuǎn)換成對(duì)應(yīng)日勺等級(jí),詳細(xì)轉(zhuǎn)換規(guī)那么如下:90100 為 A;8089為B;7079為C;6069為D;059為E;輸入輸入數(shù)據(jù)有多組,每組占一行,由一種整數(shù)
9、構(gòu)成。輸出對(duì)于每組輸入數(shù)據(jù),輸出一行。假如輸入數(shù)據(jù)不在。10。范圍內(nèi),請(qǐng)輸出一行:“Score is error!w。樣例輸入56 67100123樣例輸出EDAScore is error!提醒#includeint main。int x;while(scanf(%d”,&x)!=EOB 實(shí)現(xiàn)多行實(shí)例輸入;if(x60)printf(En”);else if(x70)printf(Dn”);else if(x80)printf(nCnn);else if(x90) printfCBnn);else if(x=2),最優(yōu)秀日勺雇員得到其中最重的一塊, 最差的雇員得到其中最輕的一塊。假設(shè)有一臺(tái)比
10、較重量H勺儀器,但愿用至少的比較 次數(shù)找出最重和最輕日勺金塊。輸入輸入共兩行, 第一行輸入金塊的數(shù)量N100000;第二行N金塊的重量,用空格間隔。輸出兩個(gè)數(shù)用空格分開(kāi),最重金塊 最輕金塊樣例輸入537964樣例輸出93#includeint mainQint n,al00000;int max,min,i;“出血做2(”十,&0!=。丹/實(shí)現(xiàn)多行實(shí)例輸入;(for(i=0;imax)max=ai;/求最最重的金塊;fbr(i=l;in;i+)22 ,埃及分?jǐn)?shù).完數(shù). Fibbonacci Number _Hdu 2070. Pakets.不要 62 _Hdu 20891問(wèn)題B:采藥時(shí)間限制:
11、1 Sec內(nèi)存限制:128 MB提交:87處理:72題目描述辰辰是個(gè)很有潛能、天資聰穎口勺孩子,他的夢(mèng)想是成為世界上最偉大的醫(yī)師。為此, 他想拜附近最有威望口勺醫(yī)師為師。醫(yī)師為了判斷他的資質(zhì),給他出了一種難題。醫(yī) 師把他帶到個(gè)到處都是草藥的山洞里對(duì)他說(shuō):“孩子,這個(gè)山洞里有某些不一樣的 草藥,采每一株都需要某些時(shí)間,每一株也有它自身的價(jià)值。我會(huì)給你一段時(shí)間, 在這段時(shí)間里,你可以采到某些草藥。假如你是一種聰穎H勺孩子,你應(yīng)當(dāng)可以讓采 到的草藥H勺總價(jià)值最大?!奔偃缒闶浅匠剑隳芡戤呥@個(gè)任務(wù)嗎?輸入輸入的第一行有兩個(gè)整數(shù)T (1 T1000)和M (1M 100) , T代表總共可以 用來(lái)采藥口
12、勺時(shí)間,M代表山洞里口勺草藥的數(shù)目。接下來(lái)|勺M行每行包括兩個(gè)在1到 100之間(包括和100)的整數(shù),分別表達(dá)采摘某株草藥口勺時(shí)間和這株草藥的價(jià)值。min=ai;”/求最輕的金塊;printf(n%d %dnn,max,min);)return 0;心得:這題重要運(yùn)用分治算法啊思想,把一種大問(wèn)題提成一種個(gè)小日勺子問(wèn)題去求解, 這個(gè)題目是經(jīng)典的二分法問(wèn)題,把這個(gè)題提成兩個(gè)小問(wèn)題,即求最重日勺和求最輕日勺 金塊,首先定義了一種一維數(shù)組,把所有金塊的質(zhì)量存入其中,把數(shù)組的初始值賦 給最重H勺和最輕H勺金塊,然后運(yùn)用循環(huán)對(duì)數(shù)組中每個(gè)金塊H勺質(zhì)量與金塊H勺初始值進(jìn) 行比較,求H勺最重和最輕的金塊,然后
13、輸出。9問(wèn)題B:工資問(wèn)題時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:121處理:74non題目描述某單位給每個(gè)職工發(fā)工資(精確到元),為了保證不要臨時(shí)兌換零錢,且取款的張 數(shù)至少,取工資前要記錄出所有職工的工資所需多種幣值(100, 50, 20, 10, 5, 2, 1元共7種)的張數(shù),請(qǐng)編程完畢。輸入輸入一種工資數(shù)10000元輸出輸出各個(gè)幣種的張數(shù),沒(méi)有的用0替代,中間用空格分開(kāi)樣例輸入173樣例輸出1110011#includeint mainQint j,z,a;int b7=100,50,20,10,5,2,1;把所有幣值按從從大到小的次序存到一位數(shù)組中;int s7 = ();
14、/定義一種一位數(shù)組,元素值全為0;scanf(%d,&z);for(j=0;j7;j+)(a=z/bj;sQ=a;z=z-a*bj; 求需要各個(gè)幣值的個(gè)數(shù);printf(H%dH,sO);for(j=l;j7;j+)printf(M %d,sj);輸出需要各個(gè)幣值的個(gè)數(shù);return 0;心得:這個(gè)題重耍運(yùn)用貪婪算法H勺措施,運(yùn)用可行的方略,求出可行解的一種解元 素由所有解元素合成問(wèn)題的一種可行解。要想獲得的張數(shù)至少,可以先考慮幣值最大 的進(jìn)行分發(fā),然后再取更小現(xiàn)金口勺幣值。依次取之。首先定義一種一維數(shù)組,把幣 值從大到小存進(jìn)去,運(yùn)用一循環(huán),把每次算的錢數(shù)口勺成果,依次對(duì)數(shù)組的幣值進(jìn)行 取整。
15、然后依次存入數(shù)組輸出。10問(wèn)題C: “水仙花數(shù)”問(wèn)題1時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:138處理:75DDD題目描述判斷一種數(shù)與否為“水仙花數(shù)”,所謂“水仙花數(shù)”是指這樣日勺一人數(shù):其各位數(shù)字口勺立 方和等于該數(shù)自身。例如:371是一種“水仙花數(shù)”,371 =3人3+7八3+13.輸入一種三位數(shù)輸出I或者0(1代表此數(shù)為水仙花數(shù),0代表此數(shù)不是水仙花數(shù))樣例輸入371樣例輸出1#includevoid mainQ(int n,x,y,z;scanf(H%dM,&n);x=n/100;求三位數(shù)口勺百位數(shù)字;z=n%10;求三位數(shù)日勺個(gè)位數(shù)字;y=(n-(x*100+z)/10;/
16、求三位數(shù)的十位數(shù)字;if(n=x*x*x+y*y*y+z*z*z)printf(%dM,l);elseprintf(“d”,0);/判斷這個(gè)三位數(shù)與否為水仙花數(shù),是輸出1,否輸出2;)心得:首先,輸入一種三位數(shù),運(yùn)用對(duì)這個(gè)數(shù)取整,取余,運(yùn)用數(shù)學(xué)公式,分別算 出它日勺百位,十位,和個(gè)位的數(shù)字,然后判斷這三個(gè)數(shù)字日勺平方和與否等于這個(gè)三 位數(shù),假如是,輸出1,假如不是輸出0.11問(wèn)題E:大小寫轉(zhuǎn)換時(shí)間限制:1000 Sec內(nèi)存限制:65536 MB提交:182處理:116UUU題目描述讀入某些字符串,將其中的小寫字母轉(zhuǎn)成大寫字母(其他字符不變)。輸入輸入為多行,每行為一種字符串,字符串只由字母和數(shù)
17、字構(gòu)成,長(zhǎng)度不超過(guò)8()。輸 入以End of file結(jié)束。輸出對(duì)于每行輸入,輸出轉(zhuǎn)換后的字符串。樣例輸入HelloICPC12345abcde樣例輸出HELLOICPC12345ABCDE#include#includevoid mainQint j;char string80;/定義一種字符串;while(scanf(s”,&string)!= EOF) 實(shí)現(xiàn)多行實(shí)例輸入;for(j=0;j=,a,)&(stringj=,z!)string。尸string。-32;/實(shí)現(xiàn)字母大小寫轉(zhuǎn)換;printf(n%snn,string);心得:這個(gè)題目重??疾燧斎胼敵觯杏写笮戅D(zhuǎn)換問(wèn)題,首先還是
18、定義一種字符 串,用while(scanf(”s”,&strin初=EOF)語(yǔ)句實(shí)現(xiàn)多行實(shí)例輸入,對(duì)這個(gè)字符串進(jìn)行循 環(huán),假如這個(gè)字符串有大寫的話,轉(zhuǎn)化成小寫的,假如有小寫口勺話,那么轉(zhuǎn)化成大 寫電12問(wèn)題B:取數(shù)游戲時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:46處理:39non題目描述有2個(gè)人輪番取2n個(gè)數(shù)中日勺n個(gè)數(shù),所取數(shù)之和大者為勝,請(qǐng)編寫算法,讓先取數(shù) 者勝,模擬取數(shù)過(guò)程。輸入輸入兩行,第一行一種整數(shù)NUOOOOO;第二行N個(gè)數(shù),用空格分開(kāi)。輸出輸出取勝人取數(shù)和。失敗人取數(shù)的和,空格分開(kāi)。樣例輸入6123456樣例輸出129#includeint main()(int n,i,
19、sum l,sum2,al OOOOO;whilc(scanf(”%d”,&n)!二EOF) 實(shí)現(xiàn)多行實(shí)例輸入;(suml=sum2=0;for(i=0;in;i+4-)scanff%d,&ai);for(i=0;in;i=i+2)suml=sumH-ai;for(i=l;in;i=i+2)sum2=sum2+ai;/隔數(shù)取數(shù)求和:suml ,sum2 ;printf(M%d %dnn,suml,sum2);elseprintf(%d %dn,sum2,sum 1);次序輸出取勝人取數(shù)和。失敗人取數(shù)和; return 0;)心得;這題重要運(yùn)用貪心算法的思想,要想先取數(shù)人獲勝,就得讓這個(gè)人每一步
20、都盡 量獲得最大日勺數(shù),這樣他取數(shù)口勺和才會(huì)總體不小于后取數(shù)日勺那個(gè)人的取數(shù)和。首先 定義一種一維數(shù)組,把要獲得數(shù)從小到大的次序放在里面,然后一種人從第一種按 照隔一種數(shù)取,求和suml;另一種人從第二個(gè)按照隔一種人取,求和sum2,比較sum1 和sum2 H勺最大值,輸出。13問(wèn)題C:整除問(wèn)題時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:70處理:44(網(wǎng)題目描述編寫算法對(duì)輸入的一種整數(shù),判斷它能否被3, 5, 7整除,并輸出如下信息之一:能同步被3, 5, 7整除;能被其中兩個(gè)數(shù)(要指出哪兩個(gè))整除;能被其中一種數(shù)(要指出那一種)整除;不能被3, 5, 7任一種整除;輸入輸入一種整數(shù)V
21、iooooo;輸出假如都能整除輸出“油”假如都不能整除輸出“ none假如能被3和5整除那么輸出“3 5”。中間有一種空格,注意按由小到大輸出。樣例輸入35樣例輸出57#includevoid mainQ(long n; int k;scanf(n%d,&n);k=(n%3=0)+(n%5=0)*2+(n%7=0)*4);/判斷整數(shù)與否能被 2,3,5 整除;switch (k)(case 7:printf(naH);break;case 6:printf(n5 7H);break;case 5:printf(*3 7);break;case 4:printf(H4H);break;case
22、3:printf(n3 5n);break;case 2:printf(n5n);break;case 1 :printf(H3);break;case O:printf(nnoncn);brcak; 用switch語(yǔ)句輸出成果;)心得:這題重要考察輸入輸出問(wèn)題,首先輸入一種整數(shù),運(yùn)用語(yǔ)句 k=(n%3=0)+(n%5=0)*2+(n%7=0)*4),判斷這個(gè)數(shù)能否被 2,3,5 整除,用 switch 語(yǔ) 句輸出所有也許發(fā)生日勺成果,然后輸出題目中所規(guī)定輸出日勺成果,其中用switch語(yǔ) 句起到了優(yōu)化算法的作用。14問(wèn)題A警察抓小偷時(shí)間限制:1 See內(nèi)存限制:128 MB提交:115處理:
23、88nnn題目描述警察局抓了 a,b,c,d,4名小偷嫌疑犯,其中只有一種人是小偷,審問(wèn)中,a說(shuō):我不是 小偷,b說(shuō):c是小偷,c說(shuō):小偷肯定是d, cm: c在冤枉人。目前已經(jīng)懂得4個(gè) 人中3人說(shuō)日勺是真話,一人說(shuō)的是假話,問(wèn)究竟誰(shuí)是小偷。輸入輸出小偷是c 樣例輸入樣例輸出 輸出輸出只包括一行,這一行只包括一種整數(shù),表達(dá)在規(guī)定日勺時(shí)間內(nèi),可以采到的草藥 的最大總價(jià)值。樣例輸入70 371 10069 11 2樣例輸出3#include stdio.hvoid main。(inta1021002=0;int t,tlscanff, %)d%d ” ,& t,& m);scanf(n%d%d,&
24、tlfor(il =1 ;il=tl)akil=ml;k+;小偷是C#includevoid mainQ(int x;for(x=l;xV=4;x+)執(zhí)行 4 次循環(huán);(3=1)+(*二=3)+3=4)+(貝二4)二二3)判斷與否有三個(gè)人說(shuō)真話的狀況; printf(,%c,64+x);心得:這個(gè)題目重要考察把文字信息轉(zhuǎn)化為數(shù)字信息,即信息數(shù)字化,把A, B, C, D當(dāng)作1, 2, 3, 4; x定義為小偷,然后把A, B, C, D四人所說(shuō)R勺話變成數(shù)字語(yǔ) 言,判斷當(dāng)他們四個(gè)人有三個(gè)人說(shuō)真話的狀況,然后以把數(shù)字變成字母輸出。15問(wèn)題B: n!時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:
25、262處理:162UUU題目描述輸入一種整數(shù)N,輸出它的階乘。輸入輸入一種整數(shù)V20;輸出輸出它的階乘樣例輸入5樣例輸出120提醒#includeint mainQint add(int m);對(duì)add函數(shù)進(jìn)行申明;int n,sum;scanf(H%dH,&n);sum=add (n);printf(%)dn,sum);return 0;int add(int n)定義 add 函數(shù)(int f;if (n=0| |n=l)(f=l;/判斷當(dāng)n等于0和1這兩種狀況;elsef二n*add(n-l);/調(diào)用 add 函數(shù)求值; return f;心得:這里重耍運(yùn)用函數(shù)的遞歸調(diào)用,首先用if對(duì)輸
26、入R勺數(shù)進(jìn)行判斷,看與否為1 和(),假如是,那么輸出其階乘等于1 ,假如不是那么調(diào)用函數(shù)f=n*add(n-l)進(jìn)行求值, add函數(shù)總共被調(diào)用了 n次,求得最終日勺成果,輸出。16漢諾塔問(wèn)題時(shí)間限制:1 See內(nèi)存限制:128 MB提交:224處理:138題目描述把N個(gè)盤子從A柱子借助B柱子移到C柱子,規(guī)定每次只能移動(dòng)一種盤子,并且小 盤子不能放到大盤子上。問(wèn)怎樣移動(dòng)。輸入輸入盤子日勺個(gè)數(shù)N (=10)輸出輸出移動(dòng)的次數(shù)。樣例輸入3樣例輸出7提醒#include int mainQint i,),n,sum;scanf(d”,&n);尸1;if(n!=l)清除盤子H勺個(gè)數(shù)為1的狀況;(fo
27、r(i=l;i=n;i+)(尸 j*2;)sum=j-1;/求盤子移動(dòng)的次數(shù);)elsesum=l;printf(H%dH,sum);return 0;)心得:這題重要考察循環(huán)與遞歸問(wèn)題,先假設(shè)盤子的個(gè)數(shù),取幾種特殊值,找出移 動(dòng)盤子次數(shù)口勺規(guī)律。這個(gè)編程首先判斷盤子個(gè)數(shù),假如是1,那么輸出1次,假如不是 1,執(zhí)行n次循環(huán),求得j,然后求出移動(dòng)盤子的次數(shù)j-1,輸出。17問(wèn)題D:猴子吃桃子問(wèn)題(遞歸)時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:98處理:87DDD題目描述一只猴子摘了假設(shè)干桃子,每天吃既有桃子H勺二分之一多一種,到第10天時(shí)就只有一種桃子了,求本來(lái)有多少個(gè)桃。輸入輸出輸出本
28、來(lái)日勺桃子數(shù)樣例輸入樣例輸出提醒#includeint mainQint i,x=l;for(i=9;i();i-)執(zhí)行 9 次循環(huán);x=(x+l)*2;/求每天桃子H勺個(gè)數(shù);printf(n%dnn,x);return 1;心得:這個(gè)題目運(yùn)用數(shù)學(xué)中倒推口勺措施求得,先求出第10天桃子日勺個(gè)數(shù),然后再求 出前一天桃子口勺個(gè)數(shù),直到求出第1天桃子的個(gè)數(shù),找出其規(guī)律。設(shè)桃子的個(gè)數(shù)為x,那么每天剩余桃子口勺個(gè)數(shù)滿足公式x=(x+l)*2,再用一種for循環(huán)求出本來(lái)日勺桃子數(shù)。18 問(wèn)題 A: A+B for Input-Output Practice (I)時(shí)間限制:1 See內(nèi)存限制:128 MB
29、提交:402處理:183網(wǎng)口題目描述Your task is to Calculate a + b,Too easy?! Of course! I specially designed the problem for acm beginners.You must have fbund that some problems have the same tides with this one, yes, all these problems were designed for the same aim.輸入The input will consist of a series of pairs of
30、 integers a and b, separated by a space, one pair of integers per line.輸出For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input樣例輸入1 510 20樣例輸出30提醒#indudevoid mainQint a,b,s;while(scanf(”d%d”,&a,&b)!=EOF) 實(shí)現(xiàn)多行實(shí)例輸入;
31、(s=a+b;/求a和b附和;printf(%dn,s);心得:這個(gè)題重要考察了輸入和輸出問(wèn)題,目日勺是計(jì)算整數(shù)a和b日勺和,首先用 while(scanf(”d%d”,&a,&b)!=EOF)語(yǔ)句實(shí)現(xiàn)多行實(shí)例輸入,然后求出a和b的和,輸 出。19A+B for Input-Output Practice (II)時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:310處理:179DDD題目描述Your task is to Calculate a + b輸入Input contains an integer N in the first line, and then N lines follo
32、w. Each line consists of a pair of integers a and b, separated by a space, one pair of integers per line.輸出For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input樣例輸入21 510 20樣例輸出630提醒nun#includevoid main()int a,b,n
33、;scanf(”%)d,&n);while(n-) /限制求和的次數(shù);(scanf(%d%d,&a,&b);/輸入 a,b;printf(dn”,a+b);/求 a,b 的和;)心得:這個(gè)題目重要考察了輸入輸出問(wèn)題,題目規(guī)定第一行輸入要輸入要計(jì)算和H勺 數(shù)量,用whilc(n-)語(yǔ)句滿足了題目H勺規(guī)定,即執(zhí)行n次,然后就是輸入a和b,接著 求出和,輸出。20 問(wèn)題 C: A+B for Input-Output Practice (III)時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:314處理:169DOD題目描述Your task is to Calculate a + b.輸入Inpu
34、t contains multiple test cases. Each test case contains a pair of integers a and b, one pair of integers per line. A test case containing 0 0 terminates the input and this test case is not to be processed.輸出For each pair of input integers a and b you should output the sum of a and b in one line, and
35、 with one line of output for each line in input樣例輸入 1 510 2000樣例輸出630 #includevoid rnainQ(int a,b;whilc(scanf(%d%d”,&a,&b)!=EQF&!(a=()&b=()/*實(shí)現(xiàn)多行實(shí)例輸入,當(dāng) a,b 都 為0時(shí)結(jié)束*/printf(dn”,a+b);求 a,b 附和;for (i=2;iml+ak-lil-tl)akil=ak-lil; /采完總價(jià)值下降 else咽值得采的狀況;k+;printf(n%dH,amt);)心得:這是一種動(dòng)態(tài)規(guī)劃的題目,首先定義一種二維數(shù)組,根據(jù)草藥H勺
36、性價(jià)比,優(yōu) 先采用較高H勺草藥,假如時(shí)間不夠,那么減少性價(jià)比繼續(xù)采用草藥,直至?xí)r間結(jié)束, 根據(jù)采集H勺草藥計(jì)算它的最大值,這題通過(guò)比較算出也許采的狀況,和不能采H勺狀 況,假如能采,那再判斷值不值得采,得出最優(yōu)解。心得:這個(gè)題目也是輸入輸出問(wèn)題,目的也是求出a和b日勺和,然后按規(guī)定輸入輸出, 對(duì)于輸入:while(scanf(n%d%dn,&a,&b)!=EOr&!(a=0&b=0)15fflii!ll 行實(shí)例輸入,假如輸入0 0,那么結(jié)束,然后求得a和bR勺和,輸出。21 問(wèn)題 D: A+B for Input-Output Practice (TV)時(shí)間限制:1 See內(nèi)存限制:128 M
37、B提交:287處理:166Dnn題目描述Your task is to Calculate the sum of some integers.輸入Input contains multiple test cases. Each test case contains a integer N, and then N integers follow in the same line. A test case starting with 0 terminates the input and this test case is not to be processed.輸出For each group o
38、f input integers you should output their sum in one line, and with one line of output for each line in inputSample Input樣例輸入4 10 2 3 405 11 2 8 5 50樣例輸出5531提醒#includevoid rnainQint a,s;int n=l;while(n!=0)scanf(H%du,&n);if(n=O)break; /判斷n與否為斷0,是結(jié)束,不是執(zhí)行下面語(yǔ)句;s = 0;for(inti=0;ivn;i+)/執(zhí)行 n 次循環(huán);scanf(%d,&
39、a);s=s+a; 每次循環(huán)求和;printf(n%dnH,s);)心得:同樣,這個(gè)題目也是重要考察了輸入輸出問(wèn)題,計(jì)算某些整數(shù)H勺和,并按指 定的格式輸出,首先輸入某些整數(shù)判斷與否都為(),假如是,那么結(jié)束,假如不是那么執(zhí) 行循環(huán),把所有輸入日勺整數(shù)相加,然后輸出。22問(wèn)題B:埃及分?jǐn)?shù)時(shí)間限制:1 See內(nèi)存限制:128 MB提交:21處理:11nnn題目描述設(shè)計(jì)一種算法,把一種真分?jǐn)?shù)表達(dá)為至少埃及分?jǐn)?shù)之和的形式,所謂埃及分?jǐn)?shù), 是指分子為1日勺分?jǐn)?shù)。如 7/8=l/2+l/3+l/24o輸入輸入兩個(gè)整數(shù),第一種表達(dá)分子,第二個(gè)數(shù)表達(dá)分母。輸出輸出埃及分?jǐn)?shù)之和,按分母有小到大的次序,中間用空
40、格分開(kāi)。樣例輸入78樣例輸出2 3 24提醒#includeint main。(int a,b,c;while(scanf(n%d %d”,&a,&b)!二EOF)實(shí)現(xiàn)多行實(shí)例輸入;if(a=l | |b%a=0)printf(dn”,b/立/假如這個(gè)數(shù)為1或分子為1,輸出分母日勺值;while(a!=1)c=b/a+l;a=a*c-b;b=b*c;printf(%d ”,c);/通過(guò)公式求出埃及分?jǐn)?shù)。if(b%a=0| | a=l)printf(n%dnn,b/a);a=l; return 0;心得:首先通過(guò)while語(yǔ)句實(shí)現(xiàn)多行實(shí)例輸入,首先輸入這是分?jǐn)?shù)的的分子分母,判 斷這個(gè)數(shù)與否為1或
41、這個(gè)數(shù)的分子為1,假如是,直接輸出分母日勺值;接下來(lái)用一 while循環(huán),通過(guò)求公式依次算出埃及數(shù),然后輸出,用每次計(jì)算口勺成果判斷分子與 否能整除分母或分子為一,假如是,直接輸出整除后成果。23問(wèn)題A:完數(shù)時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:192處理:70UUU題目描述完數(shù)的定義:假如一種不小于1的正整數(shù)口勺所有因子之和等于它口勺自身,那么稱這個(gè) 數(shù)是完數(shù),例如6, 28都是完數(shù):6=1+24-3; 28=1+2+4+7+14。此題的任務(wù)是判斷兩個(gè)正整數(shù)之間完數(shù)的個(gè)數(shù)。輸入輸入數(shù)據(jù)包括多行,第一行是一種正整數(shù)3表達(dá)測(cè)試實(shí)例的個(gè)數(shù),然后就是n個(gè)測(cè) 試實(shí)例,每個(gè)實(shí)例占一行,由兩個(gè)正
42、整數(shù)numl和num2構(gòu)成,(lVnuml,num2vl0000)。 輸出對(duì)于每組測(cè)試數(shù)據(jù),請(qǐng)輸出numl和mim2之間(包括num 1和num2)存在的完數(shù)個(gè) 數(shù)。樣例輸入22557樣例輸出01提醒 #includeVstdio.hint mainQ(int n,numl,num2,sum,m,i;int j,k;“小混做義砒-羋&0!二。?實(shí)現(xiàn)多行實(shí)例輸入;for(i=0;in;i+)執(zhí)行 n 次循環(huán);(scanf(n%d %d”,&numl,&num2);/輸入兩個(gè)整數(shù);m=0;for(j=numl;jv=num2;j+)執(zhí)行 num2-numH-l 次循環(huán);sum=O;fbr(k=l;
43、kj;k+)(if(j%k=()/判斷numl和num2之間日勺數(shù)與否能被k整除;sum=sum+k;)if(sum=j)m+;/假如是完數(shù),記錄其個(gè)數(shù);printf(,%dnn,m);return 0;)心得:這個(gè)題重要考察了輸入輸出和循環(huán)問(wèn)題,用while語(yǔ)句實(shí)現(xiàn)多行輸入,首先輸 入兩個(gè)數(shù),判斷這兩個(gè)數(shù)之間H勺數(shù)(包括這兩個(gè)數(shù))是不是完數(shù),假如是完數(shù),那么 記錄這兩個(gè)數(shù)之間完數(shù)H勺個(gè)數(shù),然后輸出。24 問(wèn)題 C: Fibbonacci Number _Hdu 2070時(shí)間限制:1 Sec內(nèi)存限制:128 MB提交:291處理:164DDD題目描述Your objective for thi
44、s question is to develop a program which will generate a fibbonacci number. The fibbonacci function is defined as such:f(0) = 0f二1f(n)= f(n-l) + f(n-2)Your program should be able to handle values of n in the range 0 to 50輸入Each test case consists of one integer n in a single line where 0 n 50. The i
45、nput is terminated by -1.輸出Print out the answer in a single line for each test case.樣例輸入345-1樣例輸出235提醒#includeint mainQ(float定義一種浮點(diǎn)型一維數(shù)組;int n;a0=0;al=l;while(scanf(%d”,&n)!=EOF&n!=-l)實(shí)現(xiàn)多行實(shí)例輸入,當(dāng)n等于-1時(shí)結(jié)束;for(int i=2;i=50;+i)山=砧川+4-2;/根據(jù)公式求出成果;printf(n%.01fnf,an);) return 0;)心得:這個(gè)題考察輸入與輸出,尚有首先定義一種浮點(diǎn)型一
46、位數(shù)組,數(shù)組中第一種 第二個(gè)數(shù)分別賦值為。和1,用while語(yǔ)句實(shí)現(xiàn)多行實(shí)例輸入,然后執(zhí)行for循環(huán),根 據(jù)公式算出所規(guī)定的成果,然后輸出成果。25 問(wèn)題 A: Packets時(shí)間限制:1 See內(nèi)存限制:128 MB提交:37處理:9題目描述A factory produces products packed in square packets of the same height h and of the sizes 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. These products are always delivered to customers in the s
47、quare parcels of the same height h as the products have and of the size 6*6. Because of the expenses it is the interest of the factory as well as of the customer to minimize the number of parcels necessary to deliver the ordered products from the factory to the customer. A good program solving the p
48、roblem of finding the minimal number of parcels necessary to deliver the given products according to an order would save a lot of money. You arc asked to make such a program.輸入輸入每行6個(gè)整數(shù),空格分開(kāi),第1到第6位為1*1, 2*2, o o o 6*6盒子的個(gè)數(shù)。當(dāng)輸入為6個(gè)。時(shí)結(jié)束。輸出輸出每行一種整數(shù),表達(dá)需要的盒子數(shù)。樣例輸入004001751000000000樣例輸出21提醒#include#include#
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026四川遂寧大英縣就業(yè)創(chuàng)業(yè)促進(jìn)中心招聘城鎮(zhèn)公益性崗位人員備考考試題庫(kù)及答案解析
- 2025年福建泉州惠安縣宏福殯儀服務(wù)有限公司招聘5人考試筆試模擬試題及答案解析
- 2025西安交通大學(xué)第一附屬醫(yī)院醫(yī)學(xué)影像科招聘勞務(wù)派遣助理護(hù)士模擬筆試試題及答案解析
- 深度解析(2026)《GBT 26066-2010硅晶片上淺腐蝕坑檢測(cè)的測(cè)試方法》
- 深度解析(2026)《GBT 26010-2010電接觸銀鎳稀土材料》(2026年)深度解析
- 深度解析(2026)《GBT 25950-2010鋁土礦 成分不均勻性的實(shí)驗(yàn)測(cè)定》(2026年)深度解析
- 深度解析(2026)《GBT 25886-2010養(yǎng)雞場(chǎng)帶雞消毒技術(shù)要求》
- 深度解析(2026)《GBT 25822-2010車軸用異型及圓形無(wú)縫鋼管》(2026年)深度解析
- 深度解析(2026)GBT 25753.2-2010真空技術(shù) 羅茨真空泵性能測(cè)量方法 第2部分:零流量壓縮比的測(cè)量
- 深度解析(2026)GBT 25695-2010建筑施工機(jī)械與設(shè)備 旋挖鉆機(jī)成孔施工通 用規(guī)程
- 閃亮的日子混聲合唱簡(jiǎn)譜
- GB/T 43933-2024金屬礦土地復(fù)墾與生態(tài)修復(fù)技術(shù)規(guī)范
- 2噸手動(dòng)叉車的液壓系統(tǒng)設(shè)計(jì)
- 2023-2024學(xué)年春季小學(xué)二年級(jí)上冊(cè)語(yǔ)文部編版課時(shí)練第20課《霧在哪里》01(含答案)
- 甲狀腺癌教學(xué)查房
- 動(dòng)物寄生蟲病學(xué)許金俊-第四章外寄生蟲病
- 醫(yī)學(xué)課件:白血病完整版
- 車輛租賃方案、通勤車租賃服務(wù)采購(gòu)方案(技術(shù)方案)
- 特種作業(yè)人員安全技術(shù)培訓(xùn)考核題庫(kù)與答案(D卷)
- 酒店住宿水單模板1
- 團(tuán)險(xiǎn)理賠操作規(guī)范課件
評(píng)論
0/150
提交評(píng)論