uva489(需要考虑周全)
这个题是简单题,但是我的思路本身不周全,忽略了一种比较“无理”的情况,而导致WA多次。我是把猜的串全扫一遍以后判断出结果,但是实际上可能是前面已经全猜对了,但是这个选手是个逗比,已经猜对了还要猜,而且后面还又猜错了几次,导致最后猜错的总次数大于7。这种情况下应该也算win的。所以如果已经全猜对了,就跳出,不要再看g串后面的了。这种不太正常的输入也是符合题目要求的,不能不考虑。以后要注意这些陷阱。
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<map>
#include<set>
#include<vector>
#include<algorithm>
#include<stack>
#include<queue>
#include<ctype.h>
using namespace std;
#define INF 1000000000
#define eps 1e-8
#define pii pair<int,int>
#define LL long long int
#define maxn 110
int cas,ans,a[],chu;
char anstr[][]= {{"You win."},{"You lose."},{"You chickened out."}};
char y[],g[];
int main()
{
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
while(scanf("%d",&cas)==)
{
if(cas==-) break;
ans=;
chu=;
memset(a,,sizeof(a));
scanf("%s%s",y,g);
int leny=strlen(y);
int leng=strlen(g);
for(int i=; i<leny; i++)
{
a[y[i]-'a']++;
}
int cuo=;
for(int i=; i<leng; i++)
{
if(chu==leny) {break;}
if(a[g[i]-'a']==)
{
cuo++;
a[g[i]-'a']=-;
if(cuo==)
{
ans=;
break;
}
}
else if(a[g[i]-'a']>)
{
chu+=a[g[i]-'a'];
a[g[i]-'a']=;
}
}
if((cuo<)&&(chu<leny))
{
for(int i=; i<; i++)
{
if(a[i]>)
{
ans=;
break;
}
}
}
printf("Round %d\n",cas);
printf("%s\n",anstr[ans]);
}
//fclose(stdin);
//fclose(stdout);
return ;
}
uva489(需要考虑周全)的更多相关文章
- SOA 实现:服务设计原则
		
http://www.ibm.com/developerworks/cn/webservices/ws-soa-design/ 引言 面向服务的体系结构(Service-Oriented Archit ...
 - [Hadoop] Hadoop学习历程 [持续更新中…]
		
1. Hadoop FS Shell Hadoop之所以可以实现分布式计算,主要的原因之一是因为其背后的分布式文件系统(HDFS).所以,对于Hadoop的文件操作需要有一套全新的shell指令来完成 ...
 - RDIFramework.NET框架SOA解决方案(集Windows服务、WinForm形式与IIS形式发布)-分布式应用
		
RDIFramework.NET框架SOA解决方案(集Windows服务.WinForm形式与IIS形式发布)-分布式应用 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架 ...
 - android开发者博客二月-Marshmallow and User Data
		
又是一篇翻译,这篇快了很多,不过也花了快一个小时,可能熟悉一点.关于6.0权限的,让你做用户认为正确的事情. Marshmallow and UserData 2016,2,1 棉花糖和用户数据 由J ...
 - ssh秘钥交换详解与实现 diffie-hellman-group-exchange-sha
		
ssh的DH秘钥交换是一套复合几种算法的秘钥交换算法.在RFC4419中称为diffie-hellman-groupX-exchange-shaX 的算法(也有另一种单纯的 rsaX-shaX 交换算 ...
 - NET框架SOA解决方案(集Windows服务、WinForm形式与IIS形式发布)-分布式应用
		
NET框架SOA解决方案(集Windows服务.WinForm形式与IIS形式发布)-分布式应用 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.N ...
 - PHP程序员遇到职业问题时,是离职?还是坚持?
		
PHP程序员遇到职业问题时,是离职?还是坚持? 初级php程序员最担心在公司里遇到原本其他程序员开发的项目,他们“跑路”以后的工作就由新程序员完成.而新员工也不懂内部的逻辑,酱紫让程序员很难处理后续的 ...
 - 201621123001《Java程序设计》第4周学习总结
		
1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 关键字:继承,多态,覆盖(Override),重载(Overload),抽象类(abstract)等. 1.2 尝试使用思维导图 ...
 - C语言实现简单的单向链表(创建、插入、删除)及等效STL实现代码
		
实现个算法,懒得手写链表,于是用C++的forward_list,没有next()方法感觉很不好使,比如一个对单向链表的最简单功能要求: input: 1 2 5 3 4 output: 1-> ...
 
随机推荐
- Python2 socket 多线程并发 TCPServer Demo
			
#coding=utf-8 import socket import threading,getopt,sys,string opts, args = getopt.getopt(sys.argv[1 ...
 - 0607am抽象类&接口&析构方法&tostring&小知识点
			
/*class ren{ public static $color;//静态 static function () { ren::$color; self::$color;//self只能写在类里面, ...
 - position:absolute width
			
position:absolute; left:0px; right:0px; top:0px; bottom:0px; 设置布满整个父范围,设置了absolute的元素可以通过以上4个属性来展开面, ...
 - 浅谈HTTPS协议
			
前言 理解协议是做接口测试的前提.本文主要向大家展示博主对HTTPS协议的理解,网上有诸多资料,有些写得过于晦涩难懂,尤其是需要密码学的一些知识.我做了一下简单的整理,刨除复杂的底层实现,单从理解SS ...
 - Linux基本命令 网络命令
			
概述 网络和监控命令类似于这些: hostname, ping, ifconfig, iwconfig, netstat, nslookup, traceroute, finger, telnet, ...
 - <script>放在head内和body内有什么区别
			
加载的顺序不一样,你可以把HTML看成从上往下加载的. 例如在网速慢的情况下把js代码放在body底部用户会先看到网页结构,等js加载完成后才出现特效 区别简述: 在HTML body部分中的Java ...
 - 跨平台移动开发_Android 平台使用 PhoneGap 方法
			
PhoneGap 下载地址http://phonegap.com/install/ 1.打开 Eclipse,在文件菜单下面点击 创建> Android Application Proj ...
 - SQL Server 利用WITH AS递归获取层级关系数据
			
WITH AS短语,也叫做子查询部分(subquery factoring),在SQL Server 2005中提供了一种解决方案,这就是公用表表达式(CTE),使用CTE,可以使SQL语句的可维护性 ...
 - Spring的AOP面向切面编程
			
什么是AOP? 1.AOP概念介绍 所谓AOP,即Aspect orientied program,就是面向方面(切面)的编程. 功能: 让关注点代码与业务代码分离! 关注点: 重复代码就叫做关注点: ...
 - tp3.2关联模型  BELONGS_TO
			
<?php namespace Home\Model; use Think\Model\RelationModel; class AttenModel extends RelationModel ...