巴什博弈------最少取件数 不是1的情况下 hdu---2897
2016-03-02 14:00
363 查看
最少取件数 是1的时候 核心代码是
在代码中 可以看到 题目中 一共出现的 三个量 1 , n ,m
当 最少取件数 不是 1的 情况下 怎么办呢 部分同学 应该就想到了 这种 代码
然而 只是这样考虑的话 那么 思维就有点 僵硬了
没有考虑到 其他的 必输 情况
也就是 当 n%(p+q) 的时候 余数 可能是 大于 最小 可取数的 当 余数 大于最小可取数的时候 对手仍然可以让你 必输 ....说的不清楚 自己用 6 2 3 这三个 数字 检测一下吧
// 共有 n 见 物品 一次最少取 一个 最多取 m 个 if(n%(m+1)==0) printf("先取者输");
在代码中 可以看到 题目中 一共出现的 三个量 1 , n ,m
当 最少取件数 不是 1的 情况下 怎么办呢 部分同学 应该就想到了 这种 代码
// 共有 n 见 物品 一次最少取 p 个 最多取 q 个 if(n%(m+q)==0) printf("先取者输");
然而 只是这样考虑的话 那么 思维就有点 僵硬了
没有考虑到 其他的 必输 情况
也就是 当 n%(p+q) 的时候 余数 可能是 大于 最小 可取数的 当 余数 大于最小可取数的时候 对手仍然可以让你 必输 ....说的不清楚 自己用 6 2 3 这三个 数字 检测一下吧
#include<stdio.h> int main() { int q,n,p; while(scanf("%d%d%d",&n,&p,&q)!=EOF) { if(n%(q+p)==0||n%(q+p)>p) printf("WIN\n"); else printf("LOST\n"); } return 0; }
相关文章推荐
- Tomcat的项目发布路径
- 动态数组的使用
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- TC SRM 683 div2 MoveStonesEasy 贪心
- HDOJ 5510-Bazinga【模拟】
- 版本管理
- 可以彻底从你的mac上卸载掉node.js
- 优化SQL查询:如何写出高性能SQL语句
- 【Boost】Boost总结汇总
- lintcode-easy-Merge Sorted Array II
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式
- Oracle 正则表达式