版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
順序?qū)R源程序名可執(zhí)行文件名輸入文件名輸出文件名ALIGN.???(PAS,C,CPP)ALIGN.EXEALIGN.INALIGN.OUT考慮兩個字符串右對齊的最佳解法。例如,有一個右對齊方案中字符串是AADDEFGGHC和ADCDEGH。AAD_DEFGGHC
ADCDE__GH_每一個數(shù)值匹配的位置值2分,一段連續(xù)的空格值-1分。所以總分是匹配點的2倍減去連續(xù)空格的段數(shù),在上述給定的例子中,6個位置(A,D,D,E,G,H)匹配,三段空格,所以得分2*6+(-1)*3=9,注意,我們并不處罰左邊的不匹配位置。若匹配的位置是兩個不同的字符,則既不得分也不失分。請你寫個程序找出最佳右對齊方案。輸入輸入文件包含兩行,每行一個字符串,最長50個字符。字符全部是大字字母。輸出一行,為最佳對齊的得分樣例ALIGN.INAADDEFGGHCADCDEGHALIGN.OUT9源程序名可執(zhí)行文件名輸入文件名輸出文件名任務(wù)安排源程序名可執(zhí)行文件名輸入文件名輸出文件名BATCH.???(PAS,C,CPP)BATCH.EXEBATCH.INBATCH.OUTN個任務(wù)排成一個序列在一臺機器上等待完成(順序不得改變),這N個任務(wù)被分成若干批,每批包含相鄰的若干任務(wù)。從時刻0開始,這些任務(wù)被分批加工,第i個任務(wù)單獨完成所需的時間是T。在每批任務(wù)開始前,機器需要啟動時間S,而完成這批任務(wù)所需的時間1是各個任務(wù)需要時間的總和(同一批任務(wù)將在同一時刻完成)。每個任務(wù)的費用是它的完成時刻乘以一個費用系數(shù)F。請確定一個分組方案,使得總費用最小。1
例如:S=l;T={1,3,4,2,1};F={3,2,3,3,4}。如果分組方案是{1,2}、{3}、{4,5},則完成時間分別為{5,5,10,14,14},費用C={15,10,30,42,56},總費用就是153。輸入第一行是N(1<=N<=5000)。第二行是S(0<=S<=50)。下面N行每行有一對數(shù),分別為T和F,均為不大于100的正整數(shù),表示第i個任務(wù)ii單獨完成所需的時間是T及其費用系數(shù)F。11輸出一個數(shù),最小的總費用。樣例BATCH.IN51TOC\o"1-5"\h\z3\o"CurrentDocument"23\o"CurrentDocument"314BATCH.OUT153源程序名可執(zhí)行文件名輸入文件名輸出文件名最大的算式源程序名可執(zhí)行文件名輸入文件名輸出文件名BIGEXP.???(PAS,C,CPP)BIGEXP.EXEBIGEXP.INBIGEXP.OUT題目很簡單,給出N個數(shù)字,不改變它們的相對位置,在中間加入K個乘號和N-K-1個加號,(括號隨便加)使最終結(jié)果盡量大。因為乘號和加號一共就是N-1個了,所以恰好每兩個相鄰數(shù)字之間都有一個符號。例如:N=5,K=2,5個數(shù)字分別為1、2、3、4、5,可以加成:1*2*(3+4+5)=241*(2+3)*(4+5)=45(1*2+3)*(4+5)=45輸入輸入文件共有二行,第一行為兩個有空格隔開的整數(shù),表示N和K,其中(2〈=N〈=15,0<=K<=N-1)。第二行為N個用空格隔開的數(shù)字(每個數(shù)字在0到9之間)。
輸出輸出文件僅一行包含一個整數(shù),表示要求的最大的結(jié)果樣例BIGEXP.IN212345BIGEXP.OUT120說明(1+2+3)*4*5=120源程序名可執(zhí)行文件名輸入文件名輸出文件名BLAST源程序名可執(zhí)行文件名輸入文件名輸出文件名BLAST.???(PAS,C,CPP)BLAST.EXEBLAST.INBLAST.OUT設(shè)有字符串X,我們稱在X的頭尾及中間插入任意多個空格后構(gòu)成的新字符串為X的擴展串,如字符串X為“abcbcd”,則字符串“abcbDcd”,“□aDbcbcd口”和“abcbDcd□”都是X的擴展串,這里“□”代表空格字符。如果A1是字符串A的擴展串,B1是字符串B的擴展串,A1與B1具有相同的長度,那么我們定義字符串A1與B』勺距離為相應(yīng)位置上的字符的距離總和,而兩個非空格字符的距離定義為它們的ASCII碼的差的絕對值,而空格字符與其它任意字符之間的距離為已知的定值K空格字符與空格字符的距離為0。在字符串A、B的所有擴展串中,必定存在兩個等長的擴展串B1,使得A1與B1之間的距離達到最小,我們將這一距離定義為字符串A、B的距離。請你寫一個程序,求出字符串A、B的距離。輸入輸入文件第一行為字符串A,第二行為字符串B,A、B均由小寫字母組成且長度均不超過2000,第三行為一個整數(shù)K,1WKW100,表示空格與其它字符的距離。輸出輸出文件僅一行包含一個整數(shù),表示要求的字符串A、B的距離。樣例BLAST.INcmc
snmn2BLAST.OUT10書的復(fù)制源程序名可執(zhí)行文件名輸入文件名輸出文件名BOOK.???(PAS,Csnmn2BLAST.OUT10書的復(fù)制源程序名可執(zhí)行文件名輸入文件名輸出文件名BOOK.EXEBOOK.INBOOK.OUT現(xiàn)在要把M本有順序的書分給K個人復(fù)制(抄寫),每一個人的抄寫速度都一樣,一本書不允許給兩個(或以上)的人抄寫,分給每一個人的書,必須是連續(xù)的,比如不能把第一、第三、第四本數(shù)給同一個人抄寫?,F(xiàn)在請你設(shè)計一種方案,使得復(fù)制時間最短。復(fù)制時間為抄寫頁數(shù)最多的人用去的時間。輸入第一行兩個整數(shù)M、K;(K<=M<=100)第二行M個整數(shù),第i個整數(shù)表示第i本書的頁數(shù)。輸出共K行,每行兩個正整數(shù),第i行表示第i個人抄寫的書的起始編號和終止編號。K行的起始編號應(yīng)該從小到大排列,如果有多解,則盡可能讓前面的人少抄寫。樣例BOOK.IN93123456789BOOK.OUT15789最小乘車費用源程序名可執(zhí)行文件名輸入文件名輸出文件名BUSSES.???(PAS,C,CPP)源程序名可執(zhí)行文件名輸入文件名輸出文件名BUSSES.EXEBUSSES.INBUSSES.OUT
某條街上每一公里就有一汽車站,乘車費用如下表:公里數(shù)12345678910費用122131404958697990101而一輛汽車從不行駛超過10公里。某人想行駛n公里,假設(shè)他可以任意次換車,請你幫他找到一種乘車方案使費用最小(10公里的費用比1公里小的情況是允許的)。編一程序:從文件BUSSES.IN中讀入對乘車費用的描述;算出最小的價格;把結(jié)果寫入文件BUSSES.OUT中。輸入輸入文件共兩行,第一行為10個不超過100的整數(shù),依次表示行駛1?10公里的費用,相鄰兩數(shù)間用空格隔開;第二行為某人想要行駛的公里數(shù)。輸出輸出文件僅一行包含一個整數(shù),表示該測試點的最小費用。樣例BUSSES.IN12213140495869799010115BUSSES.OUT147源程序名可執(zhí)行文件名輸入文件名輸出文件名筷子源程序名可執(zhí)行文件名輸入文件名輸出文件名CHOP.???(PAS,C,CPP)CHOP.EXECHOP.INCHOP.OUTA先生有很多雙筷子。確切的說應(yīng)該是很多根,因為筷子的長度不一,很難判斷出哪兩根是一雙的。這天,A先生家里來了K個客人,A先生留下他們吃晚飯。加上A先生,A夫人和他們的孩子小A,共K+3個人。每人需要用一雙筷子。A先生只好清理了一下筷子,共N根,長度為T1,T2,T3,……,TN.現(xiàn)在他想用這些筷子組合成K+3雙,使每雙的筷子長度差的平方和最小。(怎么不是和最?。??這要去問A先生了,呵呵)輸入輸入文件共有兩行,第一行為兩個用空格隔開的整數(shù),表示N,K(1WNW100,0〈K〈50),第二行共有N個用空格隔開的整數(shù),為Ti.每個整數(shù)為1?50之間的數(shù)。輸出輸出文件僅一行。如果湊不齊K+3雙,輸出-1,否則輸出長度差平方和的最小值。樣例CHOP.IN101112333461020CHOP.OUT5說明第一雙11第二雙23第三雙33第四雙46(1-1廠2+(2-3廠2+(3-3廠2+(4-6廠2=5護衛(wèi)隊源程序名 CONVOY.??? (PAS,C,CPP)可執(zhí)行文件名 CONVOY.EXE輸入文件名 CONVOY.IN輸出文件名 CONVOY.OUT護衛(wèi)車隊在一條單行的街道前排成一隊,前面河上是一座單行的橋。因為街道是一條單行道,所以任何車輛都不能超車。橋能承受一個給定的最大承載量。為了控制橋上的交通,橋兩邊各站一個指揮員。護衛(wèi)車隊被分成幾個組,每組中的車輛都能同時通過該橋。當一組車隊到達了橋的另一端,該端的指揮員就用電話通知另一端的指揮員,這樣下一組車隊才能開始通過該橋。每輛車的重量是已知的。任何一組車隊的重量之和不能超過橋的最大承重量被分在同一組的每一輛車都以其最快的速度通過該橋。一組車隊通過該橋的時間是用該車隊中速度最慢的車通過該橋所需的時間來表示的。問題要求計算出全部護衛(wèi)車隊通過該橋所需的最短時間值。輸入輸入文件第一行包含三個正整數(shù)(用空格隔開),第一個整數(shù)表示該橋所能承受的最大載重量(用噸表示);第二個整數(shù)表示該橋的長度(用千米表示);第三個整數(shù)表示該護衛(wèi)隊中車輛的總數(shù)(n〈1000)。接下來的幾行中,每行包含兩個正整數(shù)W和S(用空格隔開),W表示該車的重量(用噸表示),S表示該車過橋能達到的最快速度(用千米/小時表示)。車子的重量和速度是按車子排隊等候時的順序給出的。輸出輸出文件應(yīng)該是一個實數(shù),四舍五入精確到小數(shù)點后1位,表示整個護衛(wèi)車隊通過該橋所需的最短時間(用分鐘表示)。樣例CONVOY.IN100510402550205020701012509704930382527501970CONVOY.OUT75.0DOLLARS源程序名可執(zhí)行文件名輸入文件名輸出文件名DOLLARS.???(PAS,C,CPP)DOLLARS.EXEDOLLARS.INDOLLARS.OUT在以后的若干天里戴維將學(xué)習(xí)美元與德國馬克的匯率。編寫程序幫助戴維何時應(yīng)買或賣馬克或美元,使他從100美元開始,最后能獲得最高可能的價值。輸入輸入文件的第一行是一個自然數(shù)N,1WNW100,表示戴維學(xué)習(xí)匯率的天數(shù)。接下來的N行中每行是一個自然數(shù)A,1WAW1000。第i+1行的A表示預(yù)先知道的第i+1天的平均匯率,在這一天中,戴維既能用100美元買A馬克也能用A馬克購買100美元。輸出輸出文件的第一行也是唯一的一行應(yīng)輸出要求的錢數(shù)(單位為美元,保留兩位小數(shù))。注意:考慮到實數(shù)算術(shù)運算中進位的誤差,結(jié)果在正確結(jié)果0.05美元范圍內(nèi)的被認為是正確的,戴維必須在最后一天結(jié)束之前將他的錢都換成美元。樣例DOLLARS.IN5400300500300250DOLLARS.OUT266.66樣例解釋(無需輸出)Day1...changing100.0000美元=400.0000馬克Day2...changing400.0000馬克=133.3333美元Day3...changing133.3333美元=666.6666馬克Day5...changing666.6666馬克=266.6666美元動態(tài)規(guī)劃部分(初中組不作要求)潛水員(gas.exe)潛水員為了潛水要使用特殊的裝備。他有一個帶2種氣體的氣缸:一個為氧氣,一個為氮氣。讓潛水員下潛的深度需要各種的數(shù)量的氧和氮。潛水員有一定數(shù)量的氣缸。每個氣缸都有重量和氣體容量。潛水員為了完成他的工作需要特定數(shù)量的氧和氮。他完成工作所需氣缸的總重的最低限度的是多少?例如:潛水員有5個氣缸。每行三個數(shù)字為:氧,氮的(升)量和氣缸的重量:36120102512955025014513020119如果潛水員需要5升的氧和60升的氮則總重最小為249(1,2或者4,5號氣缸)。你的任務(wù)就是計算潛水員為了完成他的工作需要的氣缸的重量的最低值。輸入格式從文本文件gas.in中讀入數(shù)據(jù)。第一行有2整數(shù)t,a(lv=tv=21,lv=av=79)。它們表示氧,氮各自需要的量。第二行為整數(shù)n(lv=nv=1000)表示氣缸的個數(shù)。此后的n行,每行包括ti,ai,wi(1v=tiv=21,1v=aiv=79,1v=wiv=800)3整數(shù)。這些各自是:第i個氣缸里的氧和氮的容量及汽缸重量。輸出格式僅一行包含一個整數(shù),為潛水員完成工作所需的氣缸的重量總和的最低值。樣例輸入60536120102512955025014513020119樣例輸出249饑餓的奶牛(hunger.exe)John養(yǎng)了若干奶牛,每天晚上奶牛都要進食。由于條件比較簡陋,并不一定所有奶牛都能吃到食物。奶牛的進食方式是這樣的:John有n個食桶(1v=nv=2000),分別編號為1..n。這些食桶被按照編號排成一行。John將奶牛們分成若干組,每組奶??偸谴粼谝黄疬M食的,每組奶牛會提出要求——他們需要吃第start到第end桶中的食物??赡艽嬖谌舾山M奶牛都要吃同一個桶中的食物,從而就產(chǎn)生了沖突,這時John只能滿足其中一組的要求,另一些組就只能餓肚子了。John當然不想讓奶牛都餓肚子,所以他希望根據(jù)奶牛們提出的請求,滿足其中一些組的要求,使得最多的食桶被奶牛食用。這個難題困擾著John,他希望得到你的幫助。輸入格式從文本文件hunger.in中讀入數(shù)據(jù)。第一行一個整數(shù)n,表示奶牛的組數(shù)。(1v=nv=1000)第2~n+1行,每行兩個整數(shù)start和end,描述了一組奶牛提出的請求。輸出格式一個整數(shù),表示最多有多少個食桶可以被食用。樣例輸入3137834樣例輸出5(滿足第1組和第2組奶牛的要求,這樣1~3號和7~8號這5個食桶可以被食用)單詞的劃分(word.exe)有一個很長的由小寫字母組成字符串。為了便于對這個字符串進行分析,需要將它劃分成若干個部分,每個部分稱為一個單詞。出于減少分析量的目的,我們希望劃分出的單詞數(shù)越少越好。你就是來完成這一劃分工作的。輸入格式從文本文件word.in中讀入數(shù)據(jù)。第一行,一個字符串。(字符串的長度不超過100)第二行一個整數(shù)n表示單詞的個數(shù)。(nv=100)第3~n+2行,每行列出一個單詞。輸出格式一個整數(shù),表示字符串可以被劃分成的最少的單詞數(shù)。樣例輸入realityour5realrealityityourour樣例輸出2(原字符串可拆成real+it+your或reality+our,由于reality+our僅為兩個部分,因此最優(yōu)解為2,另外注意,單詞列表中的每個單詞都可以重復(fù)使用多次,也可以不用)火車票railway.exe)從Ekaterinburg到Sverdlovsk的火車線路上有若干個站點。這條線路可以近似的表示為一條線段,火車站就是線段上的點。線路始于 Ekaterinburg,終于Sverdlovsk。Ekaterinburg被標號為1,Sverdlovsk被標號為n。(n為整條線路上的站點數(shù))線路上的任意兩個站點間的直達票價是由它們間的距離決定的,票價根據(jù)以下規(guī)則制定:X為兩站的距離價格0vXv=L1C1L1vXv=L2C2L2vXv=L3C3如果兩站的間距超過L3,則無直達車票。所以有時可能有必要買多張票,通過轉(zhuǎn)車的方式,從一個站到達另一個站。例如,在上面的圖中,有7個站點。2號站點到6號站點的距離超過L3,不能買直達票。存在若干種中轉(zhuǎn)的方法,其中的一種是買兩張票:先花費C2從2號站到達3號站,然后花費C3從3號站到6號站,一種花費C2+C3。你的任務(wù)是,找出一種最經(jīng)濟的中轉(zhuǎn)方案。輸入格式從文本文件railway.in中讀入數(shù)據(jù)。第一行6個整數(shù)L1,L2,L3,C1,C2,C3(1v=L1vL2vL3v=10人9,1v=C1vC2vC3v=10人9),中間用空格分隔。第二行一個整數(shù)n(2v=nv=100),表示線路上的車站數(shù)。第三行兩個整數(shù)s和t,分別是起點和終點的編號。注意:s不一定小于to以下的n-1行,按據(jù)Ekaterinburg遠近,每行描述了一個車站的位置。它包含一個整數(shù),表示該車站據(jù)Ekaterinburg的距離。任意兩個車站的距離不超過10人9,任意兩個相鄰的車站的距離不超過L3o輸出格式一個整數(shù),表示從給定的一個站到給定的另一個站的最小花費。樣例輸入368203040726378131523樣例輸出70加油問題(oil.exe)一個美國旅行代理上經(jīng)常被要求去估計開車從一個城市旅行至另一個城市的最小費用。他有一個在通常路線上的大多數(shù)加油站的列表。列表包括了所有加油站的位置及當前每加侖汽油的價格。為了簡化估計費用的過程,代理商使用了以下的簡化汽車駕駛員行為的規(guī)則:?除非汽車無法用油箱里的汽油達到下一個加油站(如果有的話)或目的地,在油箱里還有不少于最大容量一半的汽油時,駕駛員從不在加油站停下來。?在每一個停下的加油站,駕駛員總是將油加滿。?在一個加油站停下之后,駕駛員將為旅程在快餐和糖果上花去2.00元。?在駛向加油站或目的地時,駕駛員不需要超過必須量的汽油。不需要“安全余量”。?駕駛員開始旅行時油箱總是滿的?每個加油站付款時四舍五入到分(1元等于100分)。你必須寫一個程序以估計駕駛員在旅程上至少要為汽油和食品付多少錢。輸入格式從文本文件oil.in中讀入數(shù)據(jù)。開始的2行給出了出發(fā)地和目的地的信息。數(shù)據(jù)項的后繼行代表了路線上的加油站,每個加油站用一行表示。下面是輸入數(shù)據(jù)中數(shù)據(jù)項的精確格式及其含義。第一行:一個實數(shù)——從出發(fā)地到目的地的距離(英里)第二行:三個實數(shù)及一個整數(shù)?第一個實數(shù)是汽車油箱的最大的容量(加侖)?第二個實數(shù)是汽車每加侖汽油可以行駛的英里數(shù)?第三個實數(shù)是汽車在出發(fā)地城市加滿油箱的費用(單位:元)?整數(shù)(小于51)是路線上加油站的數(shù)目接下來的每一行:兩個實數(shù)?第一個實數(shù)是從出發(fā)地到加油站的距離(單位:英里)?第二個實數(shù)是該加油站出售的汽油每加侖的價格(單位:分)數(shù)據(jù)項中的所有數(shù)據(jù)都是正的。一條路線上的加油站根據(jù)其到出發(fā)地的距離遞增排列。路線上不存在這樣的加油站,它到出發(fā)點的距離大于從出發(fā)點到目的地的距離。每條路線上的加油站都被適當?shù)陌才乓允沟萌魏纹嚩寄軓某霭l(fā)地開到目的地。輸出格式僅一行,一個實數(shù)(保留兩位小數(shù)),表示最小的花費(單位:元)。樣例輸入475.611.927.414.986102.099.9220.0132.9256.3147.9275.0102.9277.6112.9381.8100.9樣例輸出27.31公路乘車(buses.exe)一個特別的單行街道在每公里處有一個汽車站。顧客根據(jù)他們乘坐汽車的公里使來付費。例如下表就是一個費用的單子。Kilometres12345618g10Price122131404958697990101沒有一輛車子行駛超過10公里,一個顧客打算行駛n公里(lv=nv=100),它可以通過無限次的換車來完成旅程。最后要求費用最少。輸入格式第一行十個整數(shù)分別表示行走1到10公里的費用(<=500)。注意這些數(shù)并無實際的經(jīng)濟意義,即行駛10公里費用可能比行駛一公里少。第二行一個整數(shù)n表示,旅客的總路程數(shù)。輸出格式僅一個整數(shù)表示最少費用。樣例輸入12213140495869799010115樣例輸出147對話(dialog.exe)從前有兩個人,一個名為"one",另一個則叫"puton"。很奇怪,"one"除了稱呼"puton"名字外,只對他說"out"和"output"兩個單詞;"puton"除了稱呼"one"名字外,只對他說"in"和"input"兩個單詞。最近人們在研究他們對話,但是,由于資料的混亂,其中可能有一些不是他們的對話。你的任務(wù)是鑒別一些句子,判斷這些句子是否可能是他們的對話。(即,判斷句子是否可以被劃分成若干單詞,這些單詞只可以是"one"、"puton"、"out"、"output"、"in"和"input")。輸入n個字符串,長度不超過200,表示一句句子。如果可能是那兩個人的對話,則輸出”YES”;否則,輸出”NO”。輸入格式第一行一個整數(shù)n,表示一共有n句句子。此后每行一個字符串,表示一句句子。輸出格式n行,每行一個”YES”或”NO”,表示你的判斷結(jié)果。樣例輸入6putoninonputinoneputonininputoutoutputoneininputwooutoutputoutpuutput樣例輸出YESNOYESNONONO
觀光游覽(view.exe)一條街道被分成m格(lv=mv=100),還有n個景點(lv=nv=100),分布在街道上。每個景點可以占據(jù)連續(xù)的若干格,并且有一個美學(xué)值v(0<v<=100)?,F(xiàn)要組織k個人考察這個街道(1v=kv=m),每個人考察的區(qū)域是連續(xù)的若干格(不可為0格),且任意兩個人考察的區(qū)域不得相交,也不得有一個格子無人考察。對于任意一個人,如果它考察的區(qū)域中有一個風(fēng)景點(風(fēng)景點必須完整的位于這個區(qū)域),則它就得到了這個風(fēng)景點的分值(美學(xué)值)。你的任務(wù)是將街道的m個格子分給k個人去考察,使得總的分值最大。輸入格式第一行一個整數(shù)m,表示街道的長度。第二行一個整數(shù)n,表示風(fēng)景點個數(shù)。此后n行,每行描述一個風(fēng)景點,二個整數(shù)x、y和V,表示該風(fēng)景點是從第x個格子到第y個格子,美學(xué)值為V。最后一行一個整數(shù)k,表示考察的人數(shù)。輸出格式一個整數(shù),表示最大可以得到的分值。樣例輸入321222332樣例輸出3源程序名可執(zhí)行文件名輸入文件名輸出文件名胖男孩源程序名可執(zhí)行文件名輸入文件名輸出文件名FATBOY.???(PAS,C,CPP)FATBOY.EXEFATBOY.INFATBOY.OUT麥克正如我們所知的已快樂地結(jié)婚,在上個月他胖了70磅。因為手指上的脂肪過多,使他連給他最親密的朋友斯拉夫克寫一個電子郵件都很困難。每晚麥克都詳細地描述那一天他所吃的所有東西,但有時當他只想按一次某鍵時往往會按了不止一次,并且他的胖手指還會碰到他不想要按的鍵,麥克也知道自己的手指有問題,因此他在打字的時候很小心,以確保每打一個想要的字符時誤打的字符不超過3個,誤打的字符可能在正確字符之前也可能在其之后。當斯拉夫克多次收到讀不懂的電子郵件后,他總是要求麥克將電子郵件發(fā)3遍,使他容易讀懂一點。編寫程序,幫助斯拉夫克根據(jù)他所收到的三封電子郵件求出麥克可能寫出的最長的信輸入輸入文件包含了三行文本。每一行文本包括麥克信件的一種版本。其中所有的字符都由英文字母表中的小寫字母組成并且不超過100個。輸出輸出文件中第一行即唯一的一行數(shù)據(jù)應(yīng)該包含斯拉夫克根據(jù)所收到的電子郵件推測出的最長信件。你可以相信問題一定有解,但解不一定是唯一的。樣例FATBOY.INcecqbhvaiaedpibalukcabegviapcihlaaugckadceevfdadaepcialaukdFATBOY.OUTcevapiluk文件排版源程序名可執(zhí)行文件名輸入文件名輸出文件名FORMAT.???(PAS,C,CPP)FORMAT.EXEFORMAT.INFORMAT.OUT寫電子郵件是有趣的,但不幸的是經(jīng)常寫不好看,主要是因為所有的行不一樣長,你的上司想要發(fā)排版精美的電子郵件,你的任務(wù)是為他編寫一個電子郵件排版程序。完成這個任務(wù)最簡單的辦法是在太短的行中的單詞之間插入空格,但這并不是最好的方法考慮如下例子:Thisistheexampleyouareactuallyconsidering.假設(shè)我們想將第二行變得和第一行一樣長,靠簡單地插入空格則我們將得到如下結(jié)果*i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i**i*Thisistheexampleyouareactuallyconsidering.
但這太難看了,因為在第二行中有一個非常大的空白,如果將第一行的單詞“are”移到下一行我們將得到較好的結(jié)果:Thisistheexampleyouareactuallyconsidering.當然,這必須對難看程度進行量化。因此我們必須給出單詞之間的空格的難看程度,一個包含N個空格符的空白段,其難看程度值為(n-l)2程序的目的是使難看程度的總和最小化。例如,第一個例子的難看程度是1+7*7=50,而第二個例子的難看程度僅為1+1+1+4+1+4=12。輸出時,每一行的開頭和結(jié)尾處都必須是一個單詞,即每行開頭和結(jié)尾處不能有空白。唯一例外的是該行僅有一個單詞組成的情況,對于這種情況你可將單詞放在該行開頭處輸出,此時如果該單詞比該行應(yīng)有的長度短則我們指定它的最壞程度為500,當然在這種情況下,該行的實際長度即為該單詞的長度。輸入輸入文件第一行是一個整數(shù)N,表示該段要求達到的寬度,l〈=N〈=80。該段文章由一個或多個單詞組成,單詞由ASCII碼值為33到126(包含33和126)的字符組成,單詞與單詞之間用空格隔開(可能超過一個)。單詞長度不會超過段落要求達到的寬度。一段文字所有單詞的總長度不會超過10000個字符,任何一行都不會超過100個字符,任何一個單詞都在同一行內(nèi)。輸出對于每個段落,找出使其難看程度最小的排版形式并輸出句子:“MinimalbadnessisB.”,B是指按可能的最好排版形式會發(fā)生的難看程度值。注意排版后文本行數(shù)任意,多余的空格也可刪除。樣例FORMAT.IN28Thisistheexampleyouareactuallyconsidering.FORMAT.OUTMinimalbadnessis12.源程序名可執(zhí)行文件名輸入文件名輸出文件名相似基因源程序名可執(zhí)行文件名輸入文件名輸出文件名GENE.???(PAS,C,CPP)GENE.EXEGENE.INGENE.OUT大家都知道,基因可以看作一個堿基對序列。它包含了4種核苷酸,簡記作A,C,G,T。生物學(xué)家正致力于尋找人類基因的功能,以利用于診斷疾病和發(fā)明藥物。在一個人類基因工作組的任務(wù)中,生物學(xué)家研究的是:兩個基因的相似程度。因為這個研究對疾病的治療有著非同尋常的作用。兩個基因的相似度的計算方法如下:對于兩個已知基因,例如AGTGATG和GTTAG,將它們的堿基互相對應(yīng)。當然,中間可以加入一些空堿基-,例如:AGTGAT—G—GT——TAG這樣,兩個基因之間的相似度就可以用堿基之間相似度的總和來描述,堿基之間的相似度如下表所示:那么相似度就是:(-3)+5+5+(-2)+(-3)+5+(-3)+5=9。因為兩個基因的對應(yīng)方法不唯一例如又有:AGTGATG—GTTA—G相似度為:(-3)+5+5+(-2)+5+(-1)+5=14。規(guī)定兩個基因的相似度為所有對應(yīng)方法中,相似度最大的那個。輸入共兩行。每行首先是一個整數(shù),表示基因的長度;隔一個空格后是一個基因序列,序列中只含A,C,G,T四個字母。1〈=序列的長度〈=100。輸出僅一行,即輸入基因的相似度。樣例GENE.INAGTGATG5GTTAGGENE.OUT14
饑餓的牛源程序名可執(zhí)行文件名輸入文件名輸出文件名HUNGER.???(PAS,C,CPP)饑餓的牛源程序名可執(zhí)行文件名輸入文件名輸出文件名HUNGER.EXEHUNGER.INHUNGER.OUT牛在飼料槽前排好了隊。飼料槽依次用1到N(l〈=N〈=2000)編號。每天晚上,一頭幸運的牛根據(jù)約翰的規(guī)則,吃其中一些槽里的飼料。約翰提供B個區(qū)間的清單。一個區(qū)間是一對整數(shù)start-end,1〈二start〈二end〈二N,表示一些連續(xù)的飼料槽,比如1-3,7-8,3-4等等。??梢匀我膺x擇區(qū)間,但是牛選擇的區(qū)間不能有重疊。當然,牛希望自己能夠吃得越多越好。給出一些區(qū)間,幫助這只牛找一些區(qū)間,使它能吃到最多的東西。在上面的例子中,1-3和3-4是重疊的;聰明的牛選擇{1-3,7-8},這樣可以吃到5個槽里的東西。輸入第一行,整數(shù)B(1〈=B〈=1000)第2到B+1行,每行兩個整數(shù),表示一個區(qū)間,較小的端點在前面。輸出僅一個整數(shù),表示最多能吃到多少個槽里的食物。樣例HUNGER.IN31384HUNGER.OUT5遞增序列(INCNEASINGSEQUENCES)源程序名可執(zhí)行文件名輸入文件名輸出文件名INCSQ.???(PAS,C,CPP)源程序名可執(zhí)行文件名輸入文件名輸出文件名INCSQ.EXEINCSQ.ININCSQ.OUT給定一個數(shù)字串,請你插入若干個逗號,使得該數(shù)字串成為一個嚴格遞增的數(shù)列且最后一個數(shù)要盡可能小,在這個問題中,前導(dǎo)的零是允許出現(xiàn)在數(shù)的前面的。輸入輸入數(shù)據(jù)僅含一行,為一個長度不超過80的數(shù)字串。輸出輸出一個嚴格遞增且最后一數(shù)最小的數(shù)列,相鄰兩個數(shù)之間用一個逗號隔開,如果有多個數(shù)列滿足要求,則輸出第一個數(shù)最大的那個數(shù)列,若這樣的解還不止一個,則輸出第二個數(shù)最大的那個數(shù)列,以此類推。樣例INCSQ.IN100000101INCSQ.OUT100,000101奇怪的電梯源程序名 LIFT.??? (PAS,C,CPP)可執(zhí)行文件名 LIFT.EXE輸入文件名 LIFT.IN輸出文件名 LIFT.OUT呵呵,有一天我做了一個夢,夢見了一種很奇怪的電梯。大樓的每一層樓都可以停電梯,而且第i層樓(1〈二i〈=N)上有一個數(shù)字Ki(O〈二Ki〈二N)。電梯只有四個按鈕:開,關(guān),上,下。上下的層數(shù)等于當前樓層上的那個數(shù)字。當然,如果不能滿足要求,相應(yīng)的按鈕就會失靈例如:33125代表了Ki(Kl=3,K2=3,……),從一樓開始。在一樓,按“上”可以到4樓,按“下”是不起作用的,因為沒有-2樓。那么,從A樓到B樓至少要按幾次按鈕呢?輸入輸入文件共有二行,第一行為三個用空格隔開的正整數(shù),表示 N,A,B(1WNW2OO,1WA,BWN),第二行為N個用空格隔開的正整數(shù),表示Ki。輸出輸出文件僅一行,即最少按鍵次數(shù),若無法到達,則輸出-1。樣例LIFT.IN51533125LIFT.OUT3
LIGNJA源程序名 LIGNJA.???(PAS,C,CPP)可執(zhí)行文件名LIGNJA.EXE輸入文件名 LIGNJA.IN輸出文件名LIGNJA.OUT尼克每天上班之前都連接上英特網(wǎng),接收他的上司發(fā)來的郵件,這些郵件包含了尼克主管的部門當天要完成的全部任務(wù),每個任務(wù)由一個開始時刻與一個持續(xù)時間構(gòu)成。尼克的一個工作日為N分鐘,從第一分鐘開始到第N分鐘結(jié)束。當尼克到達單位后他就開始干活。如果在同一時刻有多個任務(wù)需要完成,尼克可以任選其中的一個來做,而其余的則由他的同事完成,反之如果只有一個任務(wù),則該任務(wù)必需由尼克去寫成,假如某些任務(wù)開始時刻尼克正在工作,則這些任務(wù)也由尼克的同事完成。如果某任務(wù)于第P分鐘開始,持續(xù)時間為T分鐘,則該任務(wù)將在第P+T-1分鐘結(jié)束。寫一個程序計算尼克應(yīng)該如何選取任務(wù),才能獲得最大的空暇時間。輸入輸入數(shù)據(jù)第一行包含兩個用空格隔開的整數(shù)N和K,1WNW10000,1WKW10000,N表示尼克的工作時間,單位為分,K表示任務(wù)總數(shù)。接下來共有K行,每一行有兩個用空格隔開的整數(shù)P和T,表示該任務(wù)從第P分鐘開始,持續(xù)時間為T分鐘,其中1WPWN,1WP+T-1WN。輸出輸出文件僅一行包含一個整數(shù)表示尼克可能獲得的最大空暇時間。樣例LIGNJA.IN15612161151115LIGNJA.OUT4源程序名可執(zhí)行文件名輸入文件名POLYGON源程序名可執(zhí)行文件名輸入文件名POLYGON.???(PAS,C,CPP)POLYGON.EXEPOLYGON.IN
輸出文件名POLYGON.OUT輸出文件名POLYGON.OUT對于一個多邊形來說,在該多邊形內(nèi)任取兩點,如果這兩點連成的線段落在多邊形內(nèi),則稱這樣的多邊形為凸多邊形。平面上有N個坐標值為自然數(shù)的圓點。頂點數(shù)最多凸多邊形是指由給定的圓點中的一部分組成的凸多邊形,它包含最大可能的頂點數(shù)。原點,即坐標內(nèi)中心(0,0)必須是頂點數(shù)最多凸多邊形的一個頂點。編寫程序求出這樣的凸多邊形的最大頂點數(shù)。注意一個多邊形的連續(xù)的邊不能是平行的。輸入輸入文件的第一行包含一個自然數(shù)N,2WNW100,表示給定的圓點數(shù)。下面的N行每行包含兩個用空格隔開的自然數(shù)X和Y,1WXW100,1WYW100,表示一個圓點的坐標值。所有的圓點是不相同的。輸出輸出文件的第一行也是唯一的一行應(yīng)該包含頂點數(shù)最多凸多邊形的頂點數(shù)。注意結(jié)果應(yīng)不小于3。樣例POLYGON.IN81083928232103
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職網(wǎng)絡(luò)技術(shù)(網(wǎng)絡(luò)協(xié)議分析)試題及答案
- 2025年高職工程地質(zhì)勘查(地質(zhì)勘查實操)試題及答案
- 2026年軟件開發(fā)(軟件工程)綜合測試題及答案
- 2025年中職公共管理(檔案管理)試題及答案
- 2026年中醫(yī)執(zhí)業(yè)助理醫(yī)師(醫(yī)學(xué)綜合筆試)試題及答案
- 2026年企業(yè)證券顧問(企業(yè)證券咨詢)考題及答案
- 2025-2026年高三生物(知識鞏固)下學(xué)期試題及答案
- 2025年中職(建筑工程施工)測量技術(shù)階段測試試題及答案
- 2026年中職第二學(xué)年(廣告設(shè)計)廣告創(chuàng)意與制作綜合測試題及答案
- 2025年高職稅務(wù)軟件實訓(xùn)(軟件實訓(xùn))試題及答案
- 接地線課件教學(xué)課件
- 2025西部科學(xué)城重慶高新區(qū)招聘急需緊缺人才35人考試筆試模擬試題及答案解析
- 2026廣東東莞市公安局招聘普通聘員162人筆試考試參考試題及答案解析
- 2025水發(fā)集團社會招聘269人參考筆試題庫及答案解析
- 2024江蘇南京市鼓樓區(qū)司法局社區(qū)矯正社會工作者招聘1人備考題庫及答案解析(奪冠)
- 全國碩士研究生入學(xué)統(tǒng)一考試《思想政治理論》試題答題卡模板
- 學(xué)校-全套安全隱患檢查記錄表(附依據(jù))
- Revit軟件操作技巧創(chuàng)建幕墻豎梃族
- 油層物理西安石油大學(xué)吐血整理
- 馬海濤中國稅制習(xí)題與答案
- 西游記之女兒國遇難 10
評論
0/150
提交評論