國家集訓隊作業(yè)ural競賽_第1頁
國家集訓隊作業(yè)ural競賽_第2頁
國家集訓隊作業(yè)ural競賽_第3頁
國家集訓隊作業(yè)ural競賽_第4頁
國家集訓隊作業(yè)ural競賽_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、題目來源ural 1603 Erudite題目描述判斷一個字符串在 4*4 的表格中是否存在.算法將所有字符串一一放入表格中檢驗是否存在.算法證明無需證明算法實現(xiàn)在表格中找到首字母,向四周擴展,看看字符串能否存在.源代碼const dx:Array1.5of long=(0,0,1,-1,0);dy:Array1.5of long=(1,-1,0,0,0);var st:array1.4of string4; ss:string; f:Array1.4,1.4of;flag: i,j,k,n:long ch:char;s,t:Arraya.zof long;function check(x,y

2、,k:long):;var i:long begin fx,y:=true;if k=length(ss) then exit(true); for i:=1 to 4 doif (x+dxi) in 1.4 thenif (y+dyi) in 1.4 thenif not fx+dxi,y+dyi or (i=5) then if stx+dxi,y+dyi=ssk+1 thenif check(x+dxi,y+dyi,k+1) then exit(true); fx,y:=false;exit(false);end;beginfor i:=1 to 4 do readln(sti); fo

3、r i:=1 to 4 dofor j:=1 to 4 do inc(ssti,j); readln(n);for i:=1 to n do begin readln(ss);fillchar(t,sizeof(t),0);for j:=1 to length(ss) flag:=true;nc(tssj);for ch:=a to z if not flag then beginwrin(ss,: NO); continue;end;f schtch then begin flag:=false; break; end;fillchar(f,sizeof(f),0); for j:=1 to

4、 4 dobeginfor k:=1 to 4 doif stj,k=ss1 thenif check(j,k,1) then begin flag:=false; break; end; if not flag then break;end;if not flag then wrin(ss,: YES) else wrin(ss,: NO);end; end.原題描述:1603. EruditeTime Limit: 1.0 second Memory Limit: 64 MBPetr likes found in a table 4 to solve crossword puzzles a

5、nd other conundrums. Once henewspr a new puzzle called Erudite. There was a square4 filled with letters. It was required to findhe tableas to nomany words assible; thewords could go up, down, to the right, or angles any number of times but they couldthe left and break at rightve self-ersections.Petr

6、s friend Vasya told himt it wasvery silly to spend time easier to write a program dictionary. Petr was offended write the program yourself. Isolving this puzzle. He told it was much would search for the required words in atand told Vasya: If you aret clever,will cope with the puzzle myself, the way

7、I like. Help Vasya to get out of the situation. You should write this program.InputThefour lines of the inpontain a table 4 4consisting ofnumber n (n he followinglowercase English100) of wordsletters.he next line there is thehe dictionary. per line. EachThese words are givenn lines,ordword consists of lowercase English 16.letters and has length from 1 toOutputFor each word from the dictionary output YES if this word can be foundhe table and NO otherwise. Use the format givenhe sample.Sampleinputoutputabra adac babr arcaabracadabra: YES ababaab: YES abab

溫馨提示

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

評論

0/150

提交評論