JZOJ4824 配對遊戲

2021-07-24 08:49:17 字數 825 閱讀 3696

流行的跳棋遊戲是在乙個有m*n個方格的長方形棋盤上玩的。棋盤起初全部被動物或障礙物佔滿了。在乙個方格中,『x』表示乙個障礙物,乙個『0』~『9』的個位數字表示乙個不同種類的動物,相同的個位數字表示相同種類的動物。一對動物只有當它們屬於同一種類時才可以被消去。消去之後,他們所佔的方格就成為空方格,直到遊戲結束。要消去一對動物的前提條件是:這對候選動物所在的方格必須相鄰,或它們之間存在一條通路。棋盤上乙個方格只和其上下左右的方格相鄰。一條通路是由一串相鄰的空方格組成。路的長度則是通路中空方格的數目。你要輸出可被消去的動物的最多對數,以及在此操作過程中,最小的通路長度總和。

例1 如下的乙個3*4棋盤:

兩個種類為「1」的動物可以被消去,因為它們相鄰,通路的長度是0。在這一步驟之後,存在一條在兩個種類為「0」的動物間的長度為2的通路,所以這兩個動物也可以被消去。要消去這2對動物,通路的長度總和是 0+2=2。這也是最小的通路長度總和,因為這是唯一乙個消去這2對動物的方法。所以答案是 2 2。

例2 如下的乙個4*1棋盤:

如果我們先消去正中間的兩個種類為「9」的動物,然後消去最上面和最下面的兩個種類為「9」的動物,則累計通路長度為 0+2=2。但是,我們可以先消去最頂上的兩個,然後再消去最底下的兩個。同樣也消去了2對動物,但通路長度總和是 0+0=0。很明顯,長為0的通路長度總和是最短的,答案應是 2 0。

暴力+判重可以90分

100分各種犧牲正確率換時間(或暴力加剪枝)

一種針對資料的演算法是每次選擇最近的點配對

就不放了,就是針對點犧牲正確率換時間的。

jzoj4824 配對遊戲 搜尋

流行的跳棋遊戲是在乙個有m n個方格的長方形棋盤上玩的。棋盤起初全部被動物或障礙物佔滿了。在乙個方格中,x 表示乙個障礙物,乙個 0 9 的個位數字表示乙個不同種類的動物,相同的個位數字表示相同種類的動物。一對動物只有當它們屬於同一種類時才可以被消去。消去之後,他們所佔的方格就成為空方格,直到遊戲結...

JZOJ4376 染色配對

就是給一些極大團包含點的關係,使最少的極大團包含點數為奇數。這裡題目說明每個點只與兩個極大團有被包含關係,所以我們把極大團看成點,點看成邊,則每個點連出去所有的邊 它們所對應的點 都與這個大點 所對應的極大團 有被包含關係。於是我們搜尋每個連通塊,對於每個連通塊我們建一顆搜尋樹 如下圖,黑色邊代表搜...

jzoj 3420 最優配對問題

平面上有n個點p1,p2,pn,你的任務是把它們配成n 2對 n是偶數 使得每個點恰好在乙個點對中。所有點對中兩點的距離之和應盡量小。n 20,xi yi 10000。第一行輸入n 2到20之間的偶數 接下來n行,每行輸入兩個整數表示xi,yi。xi yi 10000。輸出最小配對距離。答案保留兩位...