poj2086 博弈论+dp
来源:互联网 发布:mysql数据库的触发器 编辑:程序博客网 时间:2024/06/10 18:23
看到这道题就懵了,怎么用sg函数异或啊??
看了题解才发现,原来博弈论也可以结合dp做!
结合了dp就很简洁易懂了,P(必败点)的后继结点一定是N(必胜点),所有后继结点都是N,那么这个点就是P
#include<cstdio>#include<cstring> using namespace std;int a[25],dp[25][(2<<13)+5];int n,s;int dfs(int x,int left){ if(x>2*n) x=1; if(dp[x][left]!=-1) return dp[x][left]; for(int i=1;i<=a[x];i++){ if(left<i) break; if(!dfs(x+1,left-i)) return dp[x][left]=1; } return dp[x][left]=0;}int main(){ while(scanf("%d",&n)&&n){ memset(dp,-1,sizeof(dp)); scanf("%d",&s); for(int i=1;i<=2*n;i++){ scanf("%d",&a[i]); dp[i][0]=1;//必胜态 } printf("%d\n",dfs(1,s)); } return 0;}
阅读全文
0 0
- poj2086 博弈论+dp
- dp day4-博弈论
- Hdu4111Alice and Bob(dp+博弈论)
- poj 2068 Nim 博弈论dp
- Bachet's Game - UVa 10404 dp博弈论
- 【博弈论+dp】海盗分钱币问题
- 【Codevs1421】【树上DP】【博弈论】秋静叶&秋穰子
- poj 1082 Calendar Game 博弈论dp
- 【bzoj4600】【SDOI2016】【硬币游戏】【博弈论+dp】
- bzoj 2798 [Poi2012]Bidding 博弈论 dp
- HDU 6105 Gameia(博弈论+树形DP)
- 博弈论
- 博弈论
- 博弈论
- 博弈论
- 博弈论
- 博弈论
- 博弈论
- java夯实基础-输入输出流
- 第二篇 基本元器件认识---电容
- hibernate和Spring整合时,hibernate映射文件配置方式
- 浅析libcurl多线程安全问题
- HDU 4804 轮廓线DP
- poj2086 博弈论+dp
- Ubuntu环境下载Python库PIL(这个库有毒!!!)
- UOJ261 NOIP2016 day1 T2 天天爱跑步 (lca + 桶 )
- 深度学习进阶(三)--BackPropagation算法的影响因素(补充昨天的博客更新)
- Android mk 引用 jar 包、so 库、aar 包,系统签名
- LeetCode-110. Balanced Binary Tree
- java中synchronized关键字的实现
- Hello_Java
- Java Activiti(4)--查询历史任务数据等信息