PAT1006
At the beginning of every day, the first person who signs in the computer room will unlock the door,
在每天的开始,第一个签到进入计算机房间的人将会解锁这门
and the last one who signs out will lock the door.
最后一个出去的人会锁住这个门
Given the records of signing in's and out's,
给出进入和出去的记录
you are supposed to find the ones who have unlocked and locked the door on that day.
你被要求计算出谁解锁了门和谁锁了门
Input Specification:
Each input file contains one test case.
对于每一个输入文件包含一个测试用例
Each case contains the records for one day.
每个测试用例包含这一天的记录
The case starts with a positive integer M, which is the total number of records, followed by M lines, each in the format:
测试用例由一个正整数M开始,表示记录的数量,接下来有M行,每一行的格式如下
ID_number Sign_in_time Sign_out_time
where times are given in the format HH:MM:SS, and ID number is a string with no more than 15 characters.
给出的时间格式是HH:MM: SS,ID不会超过15个字符
Output Specification:
For each test case, output in one line the ID numbers of the persons who have unlocked and locked the door on that day.
对于每个测试用例,输出一行,解锁和锁的人的ID
The two ID numbers must be separated by one space.
两个ID必须用一个空格分开
Note: It is guaranteed that the records are consistent.
可以保证的时候记录是连续的
That is, the sign in time must be earlier than the sign out time for each person,
就是,对于每个人来说,进入的时间一定比出去的时间要早。
and there are no two persons sign in or out at the same moment.
并且没有两个人进去出去的时间是相同的。
Sample Input:
3
CS301111 15:30:28 17:00:10
SC3021234 08:00:00 11:25:25
CS301133 21:45:00 21:58:40
Sample Output:
SC3021234 CS301133
自己的代码太low了,我去,我干啥要一个个读取,干嘛要一个个去比较,我是不是蠢货啊。
这里推荐直接字符串比较就可以了。我真的是,写了一大堆才发现自己有多蠢。。。这种错误不能犯第二次,下一次一定要记住。下面是网上的代码,真的很简练很爽。
#include<stdio.h>
#include<string.h>
int main(){
char lkman[],unlkman[];
char id[],in[],out[];
char fst[]={"24:00:00"},last[]={"00:00:00"};
int i,j,n;
scanf("%d",&n);
for(i=;i<n;i++){
scanf("%s %s %s",id,in,out);
if(strcmp(in,fst)<){
strcpy(fst,in);
strcpy(unlkman,id);
}
if(strcmp(out,last)>){
strcpy(last,out);
strcpy(lkman,id);
}
}
printf("%s %s\n",unlkman,lkman);
return ;
}
代码转载自:http://blog.csdn.net/sup_heaven/article/details/8451669
PAT1006的更多相关文章
- PAT1006:Sign In and Sign Out
1006. Sign In and Sign Out (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue ...
- pat1006. Sign In and Sign Out (25)
1006. Sign In and Sign Out (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue ...
- 一天两道PAT(2)1005,1006
今天的pat1006没什么好说的.就记录一下1005的状况.先上题目. 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重 ...
随机推荐
- XCode工程内多Targets
XCode工程内多Targets 可以认为一个target对应一个新的product(基于同一份代码的情况下). 虽然代码是同一份, 但编译设置(比如编译条件), 以及包含的资源文件却可以有很大的差别 ...
- jQuery.on() 函数详解[http://www.365mini.com/page/jquery-on.htm]
中文手册 2014年09月01日 暂无评论 on()函数用于为指定元素的一个或多个事件绑定事件处理函数. 此外,你还可以额外传递给事件处理函数一些所需的数据. 从jQuery 1.7开始,on()函数 ...
- Linux Ubuntu 14.04安装LAMP(Apache+MySQL+PHP)网站环境
从虚拟主机到VPS/服务器的过度,对于普通的非技术型的站长用户来说可能稍许有一些困难,麦子建议我们如果能够在虚拟主机环境中满足建站需要的, 还是用虚拟主机比较好.除非我们真的有需要或者希望从虚拟主机过 ...
- 转:Jmeter之使用CSV Data Set Config实现参数化登录
在使用Jemeter做压力测试的时候,往往需要参数化用户名,密码以到达到多用户使用不同的用户名密码登录的目的.这个时候我们就可以使用CSV Data Set Config实现参数化登录: 首先通过Te ...
- BITMAP图片压缩算法三则--bilinear、nearest、cubic
原文:http://blog.chinaunix.net/uid-253932-id-3037805.html 工作需要,要弄截图且缩小.截图倒是好说,WIN API可以搞定,但是缩小且尽量不失真,这 ...
- IntelliJ IDEA 部署远程服务
今天产品遇到个本地无法重现,服务器上却出现的 Bug. 想起来 IDEA 有远程调试的功能就拿来用用. 教程如下: 1. 创建 tomcat service 2. 填入服务器的 IP 和端口 3. 确 ...
- android:layout_weight属性的使用方法总结
原创文章,转载请注明出处http://www.cnblogs.com/baipengzhan/p/6282826.html android:layout_weight属性可以和其他属性配合使用,产生多 ...
- sql语句--查询语句(MySQL)
1.截取字符串 left(str, length),right(str, length),substring(str, pos, length) 原文:http://www.jb51.net/arti ...
- SQLite : 解决“找不到请求的 .Net Framework 数据提供程序。可能没有安装”的问题
在使用subsonic 3时,如果不完整安装SQLite的SDK包,直接在项目中使用System.Data.SQLite将引发上述错误. 原因是:是 DBproviderfacotories 没有导 ...
- 多个git账户生成多份rsa秘钥实现多个账户同时使用配置
下文分享一个多个git账户生成多份rsa秘钥实现多个账户同时使用配置例子了,这个例子非常的好用对于有多个git的朋友有不小的帮助. 使用过git的童鞋应该对id_rsa秘钥不陌生,总得用github吧 ...