luogu4474王者之劍 網路流

2022-05-27 16:45:12 字數 1427 閱讀 5327

這是在阿爾托利亞·潘德拉貢成為英靈前的事情,她正要去拔出石中劍成為亞瑟王,在這之前她要去收集一些寶石。

寶石排列在乙個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 22 1

輸出 #1

4
姚金宇的原創題。

**:

include#include#include#include#include#define r register

#define inf 1e9+7

using namespace std;

const int excalibur = 10005;//n或maxn

int n, m, s, t, cur[excalibur], dep[excalibur];

struct saber rin[excalibur<<3];//是凜哦

int lancer[excalibur], fate = 1, archar;//emmm,head和tot以及sum

int x[5] = , y[5] = ;

inline void add(int from, int to, int v)

inline bool bfs(int s, int t) }}

return dep[t];

}int dfs(int s, int t, int flow)

}return caster;

}int dinic()

int main()

else

}for(r int i = 1;i <= n;++ i) for(r int j = 1;j <= m;++ j)

if((i + j) & 1)

for(r int k = 1;k <= 4;++ k)

printf("%d",dinic());

return 0;

}

洛谷P4474 王者之劍(吾王的題目!!!)

蒟蒻第一次發題解,看官點個贊再走qwq 題目鏈結 這是在阿爾托利亞 潘德拉貢成為英靈前的事情,她正要去拔出石中劍成為亞瑟王,在這之前她要去收集一些寶石。寶石排列在乙個n m的網格中,每個網格中有一塊價值為v i,j 的寶石,阿爾托利亞 潘德拉貢可以選擇自己的起點。開始時刻為0秒。以下操作,每秒按順序...

王者之劍題解

時間限制 1 s 記憶體限制 256 mb 這是在阿爾托利亞 潘德拉貢成為英靈前的事情,她正要去拔出石中劍成為亞瑟王,在這之前她要去收集一些寶石。寶石排列在乙個n m的網格中,每個網格中有一塊價值為v i,j 的寶石,阿爾托利亞 潘德拉貢可以選擇自己的起點。開始時刻為0秒。以下操作,每秒按順序執行 ...

cogs 2051 王者之劍

這是在阿爾托利亞 潘德拉貢成為英靈前的事情,她正要去拔出石中劍成為亞瑟王,在這之前她要去收集一些寶石。寶石排列在乙個n m的網格中,每個網格中有一塊價值為v i,j 的寶石,阿爾托利亞 潘德拉貢可以選擇自己的起點。開始時刻為0秒。以下操作,每秒按順序執行 1.在第i秒開始的時候,阿爾托利亞 潘德拉貢...