您的位置:首页 > 其它

hackerrank初级篇之Time Conversion

2018-03-02 10:12 302 查看
题目说明:



示例代码:// timeconversion.cpp: 定义控制台应用程序的入口点。
//
// 12-h to 24-h
//

#include "stdafx.h"
#include <windows.h>
#include <sstream>
#include <string>
#include <iostream>
using namespace std;

string timeConversion( string time_12 )
{
string time_temp = "";
int h_time = 0;

//get string of hour
time_temp = time_12;
time_temp.replace( 2, time_temp.length() - 2, "" );

//string to int
stringstream stream( time_temp );
stream >> h_time;

if( time_12.find( "AM" ) != -1 )
{
//del AM
time_12.replace( time_12.length() - 2, 2, "" );

//12:00:00 to 00:00:00
if( h_time == 12 )
time_12.replace( 0, 2, "00" );
}
else if( time_12.find( "PM" ) != -1 )
{
//del PM
time_12.replace( time_12.length() - 2, 2, "" );

//12:00:00 to 12:00:00
if( h_time != 12 )
h_time += 12;

//int to string
stringstream intstream;
intstream << h_time;
intstream >> time_temp;

time_12.replace( 0, 2, time_temp );
}

return time_12;
}
int main()
{
//input format:
//02:00:12AM 12:00:04AM 08:12:13PM 12:13:14PM

string s;
cin >> s;
cout << timeConversion( s ) << endl;
system( "pause" );
return 0;
}


基础知识点:
1、类型转换(string与int互相转换),此处使用c++流的方式
2、string字符串分割、截取等
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: