版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、問題求解與程序設(shè)計(jì)第七講 內(nèi)容提要 搜索 討論 1011 stick 討論 1054 the troublesome frog 參考王知昆的冬令營報(bào)告 作業(yè)搜索的普通概念 在解空間中嘗試一切能夠,找出滿足條件的取值 回想填數(shù)游戲:1-9填在3*3的表格中,使得行、列、對角線的和均為15。 方程組 搜索 逐一嘗試+剪枝標(biāo)題討論 1011 stick標(biāo)題討論 The Troublesome Frog IOI 2002 day 1 task 1問題 稻田問題 青蛙從外面跳入稻田,踩過一些禾苗,后,跳出稻田。問題 蛙路:一個方向,等間距,大于等于3個點(diǎn) 不同蛙路:可以方向不同,間距不同問題 許多青蛙跳
2、過稻田,構(gòu)成多條蛙路,不同蛙路可以踩過同一作物。問題 青蛙每天早上踩壞稻田,早上人們發(fā)現(xiàn)稻田有假設(shè)干株作物被踩壞,但不知多少青蛙來過。也有不在蛙路上的被踩壞的作物。問題 問,給定一塊被踩壞的稻田,求能夠的最長的蛙路上被踩壞的作物的數(shù)目。輸入 第一行整數(shù)R和C,稻田的行數(shù)和列數(shù) 第二行整數(shù)N,表示被踩壞的作物總數(shù)。 后續(xù)N行,每行兩個整數(shù)i,j為被踩壞的作物的行和列的位置:1=i=R,1,1=j=C。 每個被踩壞的作物只出現(xiàn)一次。輸出 單個整數(shù)- 表示最長能夠蛙路上踩壞的作物數(shù)目樣例 Figure- 4問題的解 這道標(biāo)題也就是說,在給出的n個點(diǎn)中找出一些點(diǎn)的序列來,使得每一個點(diǎn)相對于上一個點(diǎn)的坐
3、標(biāo)都是一個一樣的向量,且第一個點(diǎn)減去這個向量和最后一個點(diǎn)加上這個向量后均落在方格的外面。 問題的解 我們先對這些點(diǎn)按照坐標(biāo)排序。然后依次循環(huán)出要求的序列中的第一個和第二個點(diǎn),這樣我們就知道后一個點(diǎn)相對于前一個點(diǎn)的坐標(biāo)是多少了。然后我們依次用第二個點(diǎn)加上這個坐標(biāo)的出第三個點(diǎn),第三個點(diǎn)加上這個坐標(biāo)得出第四個點(diǎn)等等。當(dāng)然,我們還需求判別一下這求出來的第三個、第四個點(diǎn)能否在給定的點(diǎn)內(nèi)。 問題的解 由于每個點(diǎn)的上一個點(diǎn)/下一個點(diǎn)最多只能有n種選擇,故一個點(diǎn)最多屬于n條不同的蛙路。這樣,對于某個確定的點(diǎn)來說,它的一切能夠的下一個需求判別的點(diǎn)至多有n個。這樣由于判別一個點(diǎn)在不在給定的點(diǎn)內(nèi)只需求O(1)的復(fù)雜
4、度,所以我們只需求O(n2)的時間就可以得出問題的解答。由于這個算法需求一個r*c的表來保管點(diǎn)在方格中的存在形狀,故空間復(fù)雜度為O(n2)。 問題的解 需求留意的是,蛙路中的點(diǎn)數(shù)少于3個的時候是不思索的。所以這個時候的蛙路中的點(diǎn)數(shù)應(yīng)該按照0來算。 實(shí)現(xiàn)細(xì)節(jié) Frog vs frog 平面上點(diǎn)的表示 Frog 2 0 有冗余代碼 Frog 2 1 去掉冗余 Frog 2 2 compare 判別 Frog 2 3改動表達(dá)式寫法 Frog 2 4添加剪枝 Frog 2 5不太好的剪枝順序 Frog 2 6較好的剪枝順序測試數(shù)據(jù)No. N, (R*C) Description Solution1 1
5、8, (6 * 7) Sample data in the task description 42 10, (10 * 10) Manually designed 53 25, (50 * 50) Manually designed 134 50, (10 * 10) Several Lines + random points 105 100, (20 * 20) modified random point set 106 300, (30 * 30) modified random point set 157 500, (55 * 55) Several Lines + random poi
6、nts 288 500, (100 * 100) Special case for no solution 09 1000, (100 * 100) Several Lines + random points 3410 1000, (1000 * 1000) Several Lines + random points 25011 2000, (50 * 50) Random (uniform) points 2512 2000, (100 * 200) Several Lines + random points 3313 2000, (1000 * 2000) Several Lines +
7、random points 333測試數(shù)據(jù)14 3000, (60 * 60) Uniformly random points 3115 3000, (500 * 500) X shapes and random points 50016 3000, (5000 * 1) Horizontal line 2017 3000, (5 * 1000) Several Lines + random points 1718 4000, (100 * 100) Random points (uniformly) 3419 4000, (200 * 20) Very dense points set 20020 4000, (1000 * 1000) Several Lines + random points 50021 4000, (5000 * 5000) Several Lines + random points 31122 5000, (100 * 100) Chess board style 10023 5000, (1000 * 1000) Several Lines + random points 33424 5000
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 消防廣播系統(tǒng)建設(shè)方案
- 水利工程預(yù)算審核與控制方案
- 礦山安全生產(chǎn)隱患排查方案
- 工地環(huán)境監(jiān)測與控制方案
- 工地施工現(xiàn)場事故調(diào)查處理方案
- 村莊消防設(shè)施建設(shè)方案
- 消防設(shè)施運(yùn)維人員培訓(xùn)方案
- 消防設(shè)施負(fù)荷計(jì)算方案
- 填土施工溫度控制方案
- 消防用水源的選擇與設(shè)計(jì)方案
- 2025年高考(海南卷)歷史真題(學(xué)生版+解析版)
- 2026河北石家莊技師學(xué)院選聘事業(yè)單位工作人員36人備考考試試題附答案解析
- 云南省2026年普通高中學(xué)業(yè)水平選擇性考試調(diào)研測試歷史試題(含答案詳解)
- 企業(yè)培訓(xùn)課程需求調(diào)查問卷模板
- GB 4053.3-2025固定式金屬梯及平臺安全要求第3部分:工業(yè)防護(hù)欄桿及平臺
- 2026屆福州第三中學(xué)數(shù)學(xué)高二上期末檢測模擬試題含解析
- 2025年下屬輔導(dǎo)技巧課件2025年
- 企業(yè)法治建設(shè)培訓(xùn)課件
- (一模)鄭州市2026年高中畢業(yè)年級(高三)第一次質(zhì)量預(yù)測數(shù)學(xué)試卷(含答案及解析)
- 2026中央廣播電視總臺招聘124人參考筆試題庫及答案解析
- NBT 11898-2025《綠色電力消費(fèi)評價技術(shù)規(guī)范》
評論
0/150
提交評論