Hackerrank - Time Conversion
Given a time in -hour AM/PM format, convert it to military (24-hour) time.
Note: - 12:00:00AM on a 12-hour clock is 00:00:00 on a 24-hour clock.
- 12:00:00PM on a 12-hour clock is 12:00:00 on a 24-hour clock.
Example
Return '12:01:00'.
Return '00:01:00'.
Function Description
Complete the timeConversion function in the editor below. It should return a new string representing the input time in 24 hour format.
timeConversion has the following parameter(s):
- string s: a time in hour format
Returns
- string: the time in hour format
Input Format
A single string that represents a time in -hour clock format (i.e.: or ).
Constraints
- All input times are valid
Sample Input 0
07:05:45PM
Sample Output 0
19:05:45
import java.io.*;import java.math.*;import java.security.*;import java.text.*;import java.util.*;import java.util.concurrent.*;import java.util.function.*;import java.util.regex.*;import java.util.stream.*;import static java.util.stream.Collectors.joining;import static java.util.stream.Collectors.toList;
class Result {
public static String timeConversion(String s) { String amOrPm = s.substring(s.length()-2); String[] components = s.substring(0,s.length()-2).split(":");
if(amOrPm.equals("PM") && Integer.parseInt(components[0]) < 12){ components[0] = (Integer.parseInt(components[0])+12)+""; } if(amOrPm.equals("AM") && components[0].equals("12")){ components[0] = "00"; } String res = components[0]+":"+components[1]+":"+components[2]; return res;
}
}
public class Solution { public static void main(String[] args) throws IOException { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH")));
String s = bufferedReader.readLine();
String result = Result.timeConversion(s);
bufferedWriter.write(result); bufferedWriter.newLine();
bufferedReader.close(); bufferedWriter.close(); }}
Comments
Post a Comment