博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
巴什博弈------最少取件数 不是1的情况下 hdu---2897
阅读量:6800 次
发布时间:2019-06-26

本文共 677 字,大约阅读时间需要 2 分钟。

最少取件数 是1的时候   核心代码是  

1 //  共有 n 见 物品  一次最少取  一个 最多取 m 个2 if(n%(m+1)==0)3     printf("先取者输");

在代码中  可以看到   题目中 一共出现的  三个量  1 , n ,m            

 

当 最少取件数 不是 1的 情况下 怎么办呢   部分同学 应该就想到了  这种 代码 

1 //  共有 n 见 物品  一次最少取  p 个 最多取 q 个2 if(n%(m+q)==0)3     printf("先取者输");

然而 只是这样考虑的话 那么  思维就有点 僵硬了 

没有考虑到 其他的 必输 情况 

也就是  当 n%(p+q) 的时候   余数 可能是  大于 最小 可取数的   当 余数 大于最小可取数的时候  对手仍然可以让你 必输 ....说的不清楚   自己用  6  2  3  这三个 数字 检测一下吧

1 #include
2 int main() 3 { 4 int q,n,p; 5 while(scanf("%d%d%d",&n,&p,&q)!=EOF) 6 { 7 if(n%(q+p)==0||n%(q+p)>p) 8 printf("WIN\n"); 9 else10 printf("LOST\n");11 }12 return 0;13 }

 

转载于:https://www.cnblogs.com/A-FM/p/5234719.html

你可能感兴趣的文章
Windows Azure Traffic Manager的新的管理API
查看>>
1.5站立会议之个人
查看>>
remote机制的AdditionalFields
查看>>
MySQL 常用内置函数与所有内置函数
查看>>
bzoj千题计划105:bzoj3503: [Cqoi2014]和谐矩阵(高斯消元法解异或方程组)
查看>>
Mybatis学习(4)输入映射、输出映射、动态sql
查看>>
java设计模式-策略模式
查看>>
iOS随笔记录
查看>>
objective-c面向对象
查看>>
Windows 7下Git SSH 创建Key【待解决?】
查看>>
阿里云服务器Linux CentOS安装配置(七)域名解析
查看>>
最长公共前缀---简单
查看>>
课程引言作业一
查看>>
like 大数据字段 查询慢
查看>>
JSON 数据格式
查看>>
Django----解决跨域
查看>>
SQL聚合函数
查看>>
Eclipse配色方案
查看>>
字符编码,文件处理
查看>>
Nginx配置文件解析
查看>>