博弈 单堆石子的动态规划实现

来源:互联网 发布:mysql 设置默认值 编辑:程序博客网 时间:2024/05/24 04:24

很简单的DP

//单堆石子的动态规划解法#include<stdio.h>#include<string>//输入int X,K,A[MAX_K];//动态规划所有的数组bool win[MAX_X+1];void solve() {win[0]=false;int i,j;for(j=1;i<=X;j++) {//如果可以让对手到达必败态,则必胜win[j]=false;for(i=0;i<K;i++) {win[j]|=A[i]<=j && !win[j-A[i]];//所有的前一状态,只要有一个必败,则已方能赢}}if (win[X]) puts("Alice");else puts("Bob");}int main() {}


0 0
原创粉丝点击