CQOI2013 棋盤遊戲

2022-03-03 15:27:22 字數 796 閱讀 8962

emmmm因為b的活動範圍比a廣,所以只要不是第一步被a吃掉,終究會贏得勝利的(根本不會有平局嘛)

上面那個結論一定要先確定好,不知道結果的話沒法對抗搜尋的。

然後就.....我們的目的是讓b盡快地贏,a盡可能地多跑一會兒,所以前者取min後者取max。

qaq 但是講道理應該步數不應該是2*n以內嘛.....我也不太明白,等dalao們cts/apio回來之後問問他們我再update吧......

#include#include#include#include#include#define maxn 25

using namespace std;

int n,m,black,white,r1,r2,c1,c2;

int sum[maxn][maxn][maxn][maxn][2][60];

int move_x[4]=,move_y[4]=;

int move_x2[8]=,move_y2[8]=;

inline int search(int r1,int c1,int r2,int c2,int op,int cnt)

int cur_ans;

if(op==0) }

else }

// printf("%d\n",sum[r1][c1][r2][c2][op][cnt]);

sum[r1][c1][r2][c2][op][cnt]=++cur_ans;

return cur_ans;

}int main()

return 0;

}

CQOI2013 新nim遊戲題解

傳統的nim遊戲是這樣的 有一些火柴堆,每堆都有若干根火柴 不同堆的火柴數量可以不同 兩個遊戲者輪流操作,每次可以選乙個火柴堆拿走若干根火柴。可以只拿一根,也可以拿走整堆火柴,但不能同時從超過一堆火柴中拿。拿走最後一根火柴的遊戲者勝利。本題的遊戲稍微有些不同 在第乙個回合中,第乙個遊戲者可以直接拿走...

CQOI2013 新NIM遊戲(線性基)

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 傳統的nim遊戲是這樣的 有一些火柴堆,每堆都有若干根火柴 不同堆的火柴數量可以不同 兩個遊戲者輪流操作,每次可以選乙個火柴堆拿走若干根火柴。可以只拿一根,也可以拿...

3106 cqoi2013 棋盤遊戲

乙個n n n 2 棋盤上有黑白棋子各一枚。遊戲者a和b輪流移動棋子,a先走。a的移動規則 只能移動白棋子。可以往上下左右四個方向之一移動一格。b的移動規則 只能移動黑棋子。可以往上下左右四個方向之一移動一格或者兩格。和通常的 吃子 規則一樣,當某遊戲者把自己的棋子移動到對方棋子所在的格仔時,他就贏...