又是一个水题。。。。
代码:
第一种解法(结构体的,未通过编译,在VC上可以正常运行)
/***** HDOJ-1234-开门人和关门人 ********/
/******** written by C_Shit_Hu ************/
////////////////结构体和字符串考察题目///////////////
/****************************************************************************/
/*
Problem Description
每天第一个到机房的人要把门打开,最后一个离开的人要把门关好。现有一堆杂乱的机房签
到、签离记录,请根据记录找出当天开门和关门的人。
Input
测试输入的第一行给出记录的总天数N ( > 0 )。下面列出了N天的记录。
每天的记录在第一行给出记录的条目数M ( > 0 ),下面是M行,每行的格式为
证件号码 签到时间 签离时间
其中时间按“小时:分钟:秒钟”(各占2位)给出,证件号码是长度不超过15的字符串。
Output
对每一天的记录输出1行,即当天开门和关门人的证件号码,中间用1空格分隔。
注意:在裁判的标准测试输入中,所有记录保证完整,每个人的签到时间在签离时间之前,
且没有多人同时签到或者签离的情况。
*/
/****************************************************************************/
//
#include<stdio.h>
#include<string.h>
typedef struct person
{
char id[20], Start_time[20], End_time[20];
} person; // 根据题目定义结构体类型
// 主函数
int main()
{
int n,m,i,Max,Min;
scanf("%d",&n);
while(n--)
{
scanf("%d",&m);
person s[100]; // 创建结构体实例
for(i=0;i<m;i++)
scanf("%s %s %s", s[i].id, s[i].Start_time, s[i].End_time); // s输入测试数据
Max=Min=0;
for(i=0;i<m;i++)
{
if( strcmp(s[i].Start_time, s[Min].Start_time)<0 )
Min=i;
if( strcmp(s[i].End_time, s[Max].End_time)>0 )
Max=i; // 又是字符串比较函数
}
printf("%s %s\n",s[Min].id,s[Max].id); // 输出相应的结果
}
return 0;
}
/******************************************************/
/******************** 心得体会 **********************/
/*
水水更健康!!!
*/
/******************************************************/
第二种:(只用字符串数组,看似简单一点了。正常AC。)
代码:
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
char a[1000][16];
int i,m,s1,s2;
scanf("%d",&m);
s1=1;
s2=2;
for(i=0;i<m*3;i++) // 注意此处以及下面的3*m.
scanf("%s",a[i]);
for(i=4;i<m*3;i+=3)
if(strcmp(a[i],a[1])<0)
{
strcpy(a[1],a[i]);
s1=i;
}
for(i=5;i<m*3;i+=3)
if(strcmp(a[i],a[2])>0)
{
strcpy(a[2],a[i]);
s2=i;
}
printf("%s %s\n",a[s1-1],a[s2-2]);
}
return 0;
}
学好字符串。c语言的一小半。。。
分享到:
相关推荐
杭电OJ(1000-1099) AC 代码
杭电acm解题报告 详细解析2000-2099 适合acm初学者
codj,hdoj的源码(50-60题)
HDOJ题目分类HDOJ题目分类HDOJ题目分类
some code of HDOJ of mine
HDOJ_1480 钥匙计数之二 解题报告.mhtHDOJ_1480 钥匙计数之二 解题报告.mht
杭州电子科技大学的离线版OJ,可用于断网情况下练习ACM
杭电oj4405,一道简单的概率dp题目
hdoj杭电1000-2000部分解题报告 部分是cpp 格式 部分是文档格式
该题求解在给定的时间及条件下,判断是否存在一条从入口到出口的路。
HDOJ_my_answer
杭电OJ题目源码记录 —— a source code of hdoj acm problem archive 简介 此项目为 的 题目以及代码仓库 src 中每一个文件夹代表一个题目 每个文件夹中都有 原题文档介绍.md 原题文档介绍.md 是工具自动生成 (无聊...
算法入门训练题,搞算法的童鞋都需要看看的,基础类型
HDOJ 源代码 包含几百道HDOJ题目源码
一些HDOJ上的DP题目的小总结,但愿能帮到那些想专攻DP的人吧
搞acm的没有谁不知道杭电题库,但是杭电上的OJ到底该怎么用,对于某些初学者确实一个难题,所以How_to_Use_HDOJ.rar应运而生
这份压缩包内包含了2019年杭电多校第一场的数据与标程,欢迎下载
hdoj上的资源,代码有注释,很不错的哦
hdoj的一些题目分类,由hdu大牛搜集,希望对做ac的同志们有帮助
HDOJ练习题目源码,约100多道题目,附带题目类型等等