国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

據(jù)說這是真的競賽題…

2020-12-04 21:55 作者:非知名科技區(qū)UP  | 我要投稿

嘍各位親愛的觀眾朋友們大家好!沒錯,還是我。這次我終于做到了史無前例的一周一更。?

三連后看,養(yǎng)成習(xí)慣

今天的題目和上期一樣,有那么億些些難度。但實質(zhì)上DFS用熟了還是可以解決的。代碼有些長,可能也不是最優(yōu)解法。但是總體運行時間尚可接受。讓我們點開下面的音樂,開啟今天的內(nèi)容吧!

今天我們來研究一個神奇的填色塊機器:

如果是有這種格式的題目,那多半都是真正的競賽題

這個題目考點還是不少的。首先,輸入的格式是一個坐標(biāo)系的點圖。但是眾所周知我們二維數(shù)組模擬的更像是一個個方格組成的方塊圖。將點對點的輸入數(shù)據(jù)描述轉(zhuǎn)化成C++能接受的二維數(shù)組,是我們必須要克服的問題。

在簡單的實驗后,我發(fā)現(xiàn)我們可以將輸入的右下角X ,Y坐標(biāo)各減去1,配合前面的左上角數(shù)據(jù)就能夠確定該矩形左上角和右下角的方塊在數(shù)組中的方位。將“坐標(biāo)系”轉(zhuǎn)化為“方格系”,這是我處理數(shù)據(jù)的基礎(chǔ)。

相比于最關(guān)鍵而且陷阱很多的DFS函數(shù),這樣的問題簡直就不叫問題。與DNDS吉尼斯不同,對于這段程序而言,完成了輸入后我們不需要在數(shù)據(jù)前面加上過多的處理?,F(xiàn)在,我們就要進入最關(guān)鍵的深度優(yōu)先搜索環(huán)節(jié)了。

具體的解決方案如下:

在深度優(yōu)先搜索的函數(shù)里,我將工作大致分成了一下幾步:

  1. 將輸入的平板和噴涂色塊的記錄(used[30])都從輸入里復(fù)制下來。然后用復(fù)制本進行操作。這樣做是因為據(jù)我實踐發(fā)現(xiàn),如果直接用函數(shù)里面int 的數(shù)據(jù)的話,到最后那個數(shù)組實際上就是個指針。這樣一來將數(shù)組開在函數(shù)括號里和開在括號外當(dāng)整體的數(shù)組就沒啥實質(zhì)區(qū)別了,而且回溯也相當(dāng)麻煩。

  2. 設(shè)置一個終結(jié)的狀態(tài),也就是將步數(shù)返回到ans里,將答案值更新。這里我的終結(jié)條件是我們填涂完的矩形數(shù)量等于輸入的矩形數(shù)量

  3. 其他情況:繼續(xù)搜索。這里是全程序最大的難點。最外面的for循環(huán)目的是讓整個尋找+填涂環(huán)節(jié)進行4次。這個是我為了應(yīng)對特殊情況專門多寫的。就像在輸入的數(shù)據(jù)里,如果我們將示例輸入的第一個和第三個矩形描述調(diào)換一下,我的程序就有些危險了。然后就是循環(huán)選擇矩形。再往里是一個if做的基本判斷,主要檢查方塊的預(yù)定顏色是否匹配,以及該方塊是否已經(jīng)被填涂。再往里是一層循環(huán),檢查選定的矩形是否全部被涂滿,這里會反饋一個叫“ok”的布爾型數(shù)據(jù),這是我們決定填涂方塊的最后指標(biāo)。接著就是涂色以及計數(shù)的環(huán)節(jié)。如果本次搜索加循環(huán)有成果,那么就可以進入下一輪搜索,否則這個搜索支就此終結(jié)。

完成了一系列的循環(huán)搜索后,輸出答案,程序結(jié)束。

好啦,這一期的競賽題目就寫到這里啦。既然都看到這里了,記得一鍵三連哦!由于BNDSOJ上的數(shù)據(jù)比較弱,本期UP決定,如果點贊數(shù)量超過4個,或者閱讀量達(dá)到30,我就把這個程序放到洛谷上用加強的數(shù)據(jù)測評一下,下期公布截圖!

Ps:由于題目可能是某個競賽的原題,我就暫時不勾選原創(chuàng)了

程序提交滿分
--------------the end------------


據(jù)說這是真的競賽題…的評論 (共 條)

分享到微博請遵守國家法律
平谷区| 永胜县| 荣昌县| 礼泉县| 宜阳县| 武清区| 克什克腾旗| 静海县| 博爱县| 忻州市| 洛扎县| 包头市| 宜昌市| 定襄县| 郴州市| 桃园市| 临邑县| 永平县| 陇西县| 林口县| 建平县| 辰溪县| 西盟| 雷山县| 嘉善县| 远安县| 濮阳县| 高碑店市| 孟连| 盐池县| 界首市| 望谟县| 蒙阴县| 凌海市| 石嘴山市| 南充市| 石河子市| 玉树县| 温州市| 刚察县| 和静县|