北邮12月份月赛A题

          话说这是神马北邮和腾讯联合举办的神马月赛,,,怀着ym众犇的心情去做比赛,,,一看题才知道有多坑爹。。。。。不仅题目山寨的要死,,,就连数据也水的要死,,,还描述错题目,,,我去,,真是神题。。不过这倒题还是学习了,学习了一些输入格式,,题目:

A  时间进制
Accept:43     Submit:326
Time Limit:1000MS     Memory Limit:65536KB

Description

二十四小时制的规则是把每日由午夜至午夜共分为二十四个小时,从数字02324是每日完结的午夜)。这个时间记录系统是现今全世界最常用的,是国际标准时间系统。

  十二小时制是一个时间规则把一日二十四小时分为两个时段,分别为上午(a.m.,拉丁文ante meridiem表示中午之前)和 下午(p.m.,拉丁文post meridiem表示中午之后)。每个时段由十二个小时构成,以数字121234567891011依次序表示。上午时段由午夜至中午,而下午时段由中午至午夜。使用十二小时制显示时间的系统通常会将中午显示为12:00 pm而将午夜显示为12:00 am

  这两种时间制各有优缺点。二十四小时制不会混淆上午的时间和下午的时间(在十二小时制中7点钟既可以指上午也可以指下午)。在日程表或类似的文件中,一眼就可以看清时间是上午还是下午。这对于需要全天二十四小时服务的机构尤其重要,例如航空公司、铁路和军队。但受到传统的行针式钟表影向,大部份人日常生活习惯上,都是使用十二小时制称呼及理解时间,例如下午5:00(17:00),日常生活中,一般都是以下午5:00称呼及理解,甚少会用17:00。当使用二十四小时制,提及下午1:00(13:00)至下午/晚上11:59(23:59)时,大部份人都需略作思考,将之换算为十二小时制,才明白所指的时间,稍为不便,甚至可能换算错误而出现误会,例如误以为18:00为下午8:00(正确为下午6:00)

--摘自百度百科

怎么把二十四进制的时间转换为十二进制表示?


Input

输入第一行是一个整数n, n<200, 表示测试数据的组数。

接下来每行输入一个用二十四小时表示的时间,格式为HH:MM:SS

Output

输出一行十二小时制的时间。格式为AM HH:MM:SSPM HH:MM:SS。注意不要忘记输出前导的0

Sample Input

13:03:10

Sample Output

PM 01:03:10

ac代码:

#include <iostream>
#include <cstdio>
#include <string>
using namespace std;
int main(){
	//freopen("4.txt","r",stdin);
  int n;
  scanf("%d",&n);
  int hour,min,sec;
  while(n--){
	scanf("%d",&hour);getchar();scanf("%d",&min);getchar();scanf("%d",&sec);
	if(hour<=11)
		printf("AM %02d:%02d:%02d\n",hour,min,sec);
	else
		printf("PM %02d:%02d:%02d\n",hour-12,min,sec);
	//printf("\n");
  }
  return 0;
}



转载于:https://www.cnblogs.com/javaspring/archive/2012/01/06/2656415.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值