POJ-3751時間日付フォーマット変換-24時間制/12時間制
日付書式変換
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 7708
Accepted: 3600
Description
日付と時刻を表すフォーマットは世界各地にあります.日付の一般的なフォーマットについては、中国では「毎年/月/日」または英語の略語で表される「yyyy/mm/dd」と表記されているが、今回のプログラミングコンテストの開始日「2009/11/07」はこのフォーマットに合致する日付であり、北米では「月月/日/年年」または「mm/dd/yyy」と表記されている.「2009/11/07」をこの形式に変更すると、「11/07/2009」に対応します.時間のフォーマットについては、12時間制と24時間制の表示方法があり、24時間制は0-24で1日の24時間を表し、12時間制は1-12で時間を表し、am/pmを加えて午前または午後を表し、例えば「17:30:00」は24時間制で時間を表し、対応する12時間制の表示方法は「05:30:00 pm」である.注意12:00:00 pmは昼12時、12:00:00 amは午前12時を表します.
「yyy/mm/dd」に24時間(短横線で-」接続)を加えて日付と時間を表す文字列については、プログラミング実装により「mm/dd/yyyy」に12時間形式の文字列を変換します.
Input
第1の動作は、変換を必要とする合計時間日付文字列の数を表す整数T(T<=10)である.
次の合計T行は、各行が変換する必要がある日付文字列です.
Output
分岐出力変換後の結果
Sample Input
Sample Output
Hint
正午と未明の特別表示に注意
Source
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 7708
Accepted: 3600
Description
日付と時刻を表すフォーマットは世界各地にあります.日付の一般的なフォーマットについては、中国では「毎年/月/日」または英語の略語で表される「yyyy/mm/dd」と表記されているが、今回のプログラミングコンテストの開始日「2009/11/07」はこのフォーマットに合致する日付であり、北米では「月月/日/年年」または「mm/dd/yyy」と表記されている.「2009/11/07」をこの形式に変更すると、「11/07/2009」に対応します.時間のフォーマットについては、12時間制と24時間制の表示方法があり、24時間制は0-24で1日の24時間を表し、12時間制は1-12で時間を表し、am/pmを加えて午前または午後を表し、例えば「17:30:00」は24時間制で時間を表し、対応する12時間制の表示方法は「05:30:00 pm」である.注意12:00:00 pmは昼12時、12:00:00 amは午前12時を表します.
「yyy/mm/dd」に24時間(短横線で-」接続)を加えて日付と時間を表す文字列については、プログラミング実装により「mm/dd/yyyy」に12時間形式の文字列を変換します.
Input
第1の動作は、変換を必要とする合計時間日付文字列の数を表す整数T(T<=10)である.
次の合計T行は、各行が変換する必要がある日付文字列です.
Output
分岐出力変換後の結果
Sample Input
2
2009/11/07-12:12:12
1970/01/01-00:01:01
Sample Output
11/07/2009-12:12:12pm
01/01/1970-12:01:01am
Hint
正午と未明の特別表示に注意
Source
/*
*Copyright (c)2015,
*All rights reserved.
* :
* :2015 8 16
* :v1.0
*/
#include<stdio.h>
#include<stdlib.h>
#include <iostream>
using namespace std;
int main()
{
int t,year,month,day,hour,minute,second,h;
char c1,c2,c3,c4,c5;
cin>>t;
while(t--)
{
cin>>year>>c1>>month>>c2>>day>>c3>>hour>>c4>>minute>>c5>>second;
if(hour==0)
h=12;
else
h=(hour>12?hour-12:hour);
printf("%02d%c%02d%c%d%c%02d%c%02d%c%02d",month,c1,day,c2,year,c3,h,c4,minute,c5,second);
cout<<(hour>=12?"pm":"am")<<endl;
}
return 0;
}