【九度OJ】题目1175:打牌 解题报告

标签(空格分隔): 九度OJ


http://ac.jobdu.com/problem.php?pid=1175

题目描述:

牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手中牌是否能够压过对方出牌。
规则:出牌牌型有5种
1一张 如4 则5…9可压过
[2]两张 如44 则55,66,77,…,99可压过
[3]三张 如444 规则如[2]
[4]四张 如4444 规则如[2]
[5]五张 牌型只有12345 23456 34567 45678 56789五个,后面的比前面的均大。

输入:

输入有多组数据。
每组输入两个字符串(字符串大小不超过100)a,b。a字符串代表手中牌,b字符串代表处的牌。

输出:

压过输出YES 否则NO。

样例输入:

12233445566677
33

样例输出:

YES

Ways

这个题好难。

首先看得懂题目,题目说的是判断b出了一次牌,看自己能不能降服,而不是说降服b手里的所有牌。

就是b的牌是符合题意的五类牌之一,a的牌是所有牌。

明白之后就简单了,判断b是否是5张牌,如果不是就是都一样的,判断自己都一样的牌数是否超过即可。

如果b是5张牌那么就是递增数列,看自己的递增数列是否有比他大的。

出现错误点:memset(num, 0, sizeof(num));,后边一定是sizeof(),因为int占4个字符。

另外判断自己连续5张牌的时候还是简单粗暴点比较好,刚开始用循环,如果有1个0就停止,这种方法不对:比如对方出的12345,如果判断自己没有2就认输是很荒唐的。

还有自己写的数组代码有的从0开始放,有的从1开始,这样很不好,以后注意吧。

#include<stdio.h>
#include<string.h> int main() {
char card[101];
char b[101];
int num[10];
while (scanf("%s%s", card, b) != EOF) {
memset(num, 0, sizeof(num));//int是4字节
int lenCard = strlen(card);
int lenb = strlen(b);
for (int i = 0; i < lenCard; i++) {
num[card[i] - '0']++;
}
bool isWin = false;
if (lenb < 5) {
for (int i = b[0] - '0' + 1; i < 10; i++) {
if (num[i] >= lenb) {
printf("YES\n");
isWin = true;
break;
}
}
if (!isWin) {
printf("NO\n");
}
} else {
for (int i = b[0] - '0' + 1; i < 6; i++) {
if (num[i] != 0 && num[i + 1] != 0
&& num[i + 2] != 0 && num[i + 3] != 0
&& num[i + 4] != 0) {
printf("YES\n");
isWin = true;
break;
}
}
if (!isWin) {
printf("NO\n");
}
}
} return 0;
}

Date

2017 年 3 月 16 日

最新文章

  1. ActiveMQ_Mqtt的TCP丢包
  2. 优化一个奇葩表设计上的全表扫描SQL
  3. Eclipse_luna_J2EE_For_JS+tomcat8.0环境搭建、配置、开发入门
  4. 再说vundle: 完全vim字符编程的四个必须插件 - zen coding 和emmet插件的使用
  5. csuoj 1507: 超大型LED显示屏
  6. Entity Framework问题总结
  7. Spring MVC 中请求返回之后的页面没法加载css、js等静态文件
  8. qq被冻结怎么激活
  9. PowerDesigner之PDM(物理概念模型)
  10. 解决android4.0系统中菜单(Menu)添加Icon无效问题
  11. 洛谷P2286 [HNOI2004]宠物收养场【Treap】题解+AC代码
  12. XPath编写规则学习
  13. &#39;NoneType&#39; object is not iterable
  14. sql server 生成数据库字典 sql语句
  15. mac brew install error
  16. html5离线记事本
  17. .NET Core 全新认识(转载)
  18. hdu6415 Rikka with Nash Equilibrium (DP)
  19. remove &amp;#39;^M&amp;#39; in shell script
  20. 大话设计模式之PHP篇 - 简单工厂模式

热门文章

  1. Go 类型强制转换
  2. js ajax 请求
  3. sersync+rsync进行数据同步
  4. Spring 注解开发
  5. springcloud - alibaba快速上手 - 更新完毕
  6. OAuth2.0实战!使用JWT令牌认证!
  7. idea 启动debug的时候throw new ClassNotFoundException(name)
  8. 关于浏览器,从输入URL到呈现页面过程!(主讲TCP/IP协议)
  9. 事务(@Transactional注解)的用法和实例
  10. JPA和事务管理