NYoj110 劍客決鬥

2021-07-03 18:05:35 字數 585 閱讀 1019

分析:

這道題真是沒想到是動態規劃,已開始認為是圖論,想了好久只有最大流才能求出值,但是構不圖。。(還是太弱啊)。 看了一篇部落格 才知道是區間動態規劃。

考慮 x 是否能贏得戰鬥,把環看成鏈,x點拆成兩個,分別作為鏈的起點和終點。這樣能勝出的條件就是自己和自己相遇。

狀態為meet【i】【j】 表示i, j能相遇,這樣就可以列舉i和j中的一點k,只要i或j能戰勝k, i, j就能相遇了(只要找到乙個點即可結束,不然會超時)。

ac**:

#include#include#includeusing namespace std;

const int maxn = 510;

int bear[maxn][maxn];

bool meet[maxn][maxn];

int main()}}

int ans = 0;

for(int i = 0; i < n; i++)

if(meet[i][i])

ans++;

printf("%d\n", ans);

}return 0;

}

NYOJ 110 劍客決鬥

描述 在路易十三和紅衣主教黎塞留當權的時代,發生了一場決鬥。n個人站成乙個圈,依次抽籤。抽中的人和他右邊的人決鬥,負者出圈。這場決鬥的最終結果關鍵取決於決鬥的順序。現書籍任意兩決鬥中誰能勝出的資訊,但 a贏了b 這種關係沒有傳遞性。例如,a比b強,b比c強,c比a強。如果a和b先決鬥,c最終會贏,但...

nyoj 110 劍客決鬥

click here n個人站成乙個圈,依次抽籤。抽中的人和他右邊的人決鬥,負者出圈。這場決鬥的最終結果關鍵取決於決鬥的順序。現輸入任意兩決鬥中誰能勝出的資訊,但 a贏了b 這種關係沒有傳遞性。例如,a比b強,b比c強,c比a強。如果a和b先決鬥,c最終會贏,但如果b和c決鬥在先,則最後a會贏。顯然...

NYoj 110 劍客決鬥 DP

劍客決鬥 時間限制 5000 ms 記憶體限制 65535 kb 難度 5 描述 在路易十三和紅衣主教黎塞留當權的時代,發生了一場決鬥。n個人站成乙個圈,依次抽籤。抽中的人和他右邊的人決鬥,負者出圈。這場決鬥的最終結果關鍵取決於決鬥的順序。現書籍任意兩決鬥中誰能勝出的資訊,但 a贏了b 這種關係沒有...