分析:
這道題真是沒想到是動態規劃,已開始認為是圖論,想了好久只有最大流才能求出值,但是構不圖。。(還是太弱啊)。 看了一篇部落格 才知道是區間動態規劃。
考慮 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 這種關係沒有...