蒟蒻第一次發題解,看官點個贊再走qwq
題目鏈結
這是在阿爾托利亞·潘德拉貢成為英靈前的事情,她正要去拔出石中劍成為亞瑟王,在這之前她要去收集一些寶石。
寶石排列在乙個n*m的網格中,每個網格中有一塊價值為v(i,j)的寶石,阿爾托利亞·潘德拉貢可以選擇自己的起點。
開始時刻為0秒。以下操作,每秒按順序執行
在第i秒開始的時候,阿爾托利亞·潘德拉貢在方格(x,y)上,她可以拿走(x,y)中的寶石。
在偶數秒,阿爾托利亞·潘德拉貢周圍四格的寶石會消失
若阿爾托利亞·潘德拉貢第i秒開始時在方格(x,y)上,則在第i+1秒可以立即移動到(x+1,y),(x,y+1),(x-1,y)或(x,y-1)上,也可以停留在(x,y)上。
求阿爾托利亞·潘德拉貢最多可以獲得多少價值的寶石
第一行給出數字n,m代表行列數.n,m均小於等於100,寶石的價值不會超過10000.下面n行m列用於描述數字矩陣
輸出最多可以拿到多少價值寶石
輸入 #1複製
2 2輸出 #1複製1 22 1
4qwq,既然是吾王的題目,肯定要a了
本題的前置知識:網路流(沒學過的童鞋可以去這裡康康洛谷**上寫的還是很詳細的)
現在開始分析啦(敲黑板!!!)
每秒開始時吾王都可以獲得她所站位置上的寶石(只能獲取一次),在偶數秒吾王周圍的四個格仔的寶石會消失,題目還給出了開始時間為0秒,所以剛開始的時候吾王周圍的四個格仔就沒有寶石了,那麼第一秒和第2秒的決策都是移動,如果兩秒都不移動。。。。(吾王睡了嗎),如果先移動,再停留,,,那什麼都沒得到,反而使更多的寶石消失了,先停留再移動也是同樣的道理。
綜上分析(到底分析了啥),吾王在每個偶數秒獲得寶石,且寶石的位置互不相鄰(自行腦補一下qwq),我們可以將題意簡化為選取m個互不相臨的寶石,使得這m個寶石價值之和最大。
這裡就要用到最小割(就是割掉權值之和最小的m條邊,使源點和匯點不連通)的知識啦
最大流等於最小割
蒟蒻不想寫嚴格的證明(其實不會證明,推導證明什麼的不存在的,這輩子都不可能qwq)
所以下面為看官老爺提供簡潔的證明。
最小割到底能幹嘛呢
稍微分析可以知道橫座標和縱座標之和為偶數的寶石肯定互不相鄰,和為奇數的寶石也是。
所以我們可以將橫座標和縱座標之和為偶數的寶石連線源點,和為奇數的寶石連線匯點,邊權為他們的價值(還要連邊權為0的反向邊),相鄰的寶石之間互相連一條邊權為inf的邊。
圖建好了,
堆的模板題 洛谷P3378
題目描述 如題,初始小根堆為空,我們需要支援以下3種操作 操作1 1 x 表示將x插入到堆中 操作2 2 輸出該小根堆內的最小數 操作3 3 刪除該小根堆內的最小數 輸入格式 第一行包含乙個整數n,表示操作的個數 接下來n行,每行包含1個或2個正整數,表示三種操作,格式如下 操作1 1 x 操作2 ...
洛谷 P3768 簡單的數學題
化簡一下式子,就是 sum ncalc d d 2 varphi d 其中 calc d frac frac 1 2 frac 2 可以對calc d 做整除分塊,那麼要求 d 2 varphi d 的字首和 看一眼資料範圍,大概要杜教篩 湊了一會,發現令 f d d 2 varphi d g d ...
洛谷P2801 教主的魔法 分塊模板題
include include include include include include include include include include include define mp make pair define pb push back define lli long long u...