HackerRank Time Conversion problem solution YASH PAL, 31 July 20249 August 2024 In this HackerRank Time Conversion problem solution given a time in 12-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 s = ’12:01:00PM’ Return ’12:01:00′. s = ’12:01:00AM’ 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 24 hour format Returns string: the time in 24 hour format Input Format A single string s that represents a time in 12-hour clock format (i.e.:hh:mm:ssAM or hh:mm:ssPM). Constraints All input times are valid Hackerrank time conversion problem solution Problem solution in Python. #!/bin/python3 import os import sys # # Complete the timeConversion function below. # def timeConversion(s): if s[-2:] == "AM" and s[:2] == "12": return "00" + s[2:-2] elif s[-2:] == "AM": return s[:-2] elif s[-2:] == "PM" and s[:2] == "12": return s[:-2] else: ans = int(s[:2]) + 12 return str(str(ans) + s[2:8]) if __name__ == '__main__': f = open(os.environ['OUTPUT_PATH'], 'w') s = input() result = timeConversion(s) f.write(str(result) + 'n') f.close() Problem solution in Java. import java.io.*; import java.util.*; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String dt = sc.next(); char ap = dt.charAt(dt.length() - 2); dt = dt.substring(0, dt.length() - 2); if (ap == 'A') { int hh = Integer.parseInt(dt.substring(0, 2)); if (hh == 12) hh = 0; String s = Integer.toString(hh); if (s.length() == 1) { s = "0" + s; } System.out.println(s + dt.substring(2, dt.length())); } else { int hh = Integer.parseInt(dt.substring(0, 2)); if (hh != 12) hh += 12; String s = Integer.toString(hh); if (s.length() == 1) { s = "0" + s; } System.out.println(hh + dt.substring(2, dt.length())); } } } Problem solution in C++ programming. #include <cstdio> #include <iostream> #include <vector> using namespace std; using std::vector; void solve(){ int hour, minute, second; char c1, c2; scanf("%d:%d:%d%c%c", &hour, &minute, &second, &c1, &c2); // printf("%dn%dn%dn%cn%c", hour, minute, second, c1, c2); hour = hour % 12; if (c1 == 'P'){ hour = hour + 12; } printf("%02d:%02d:%02dn", hour, minute, second); return; } int main(){ solve(); return 0; } Problem solution in C programming. #include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> int main() { char t[10]; scanf("%s", t); if(t[8] == 'P') { if(t[0] != '1' || t[1] != '2') { t[0]++; t[1]+=2; } } else { if(t[0] == '1' && t[1] == '2') { t[0] = '0'; t[1] = '0'; } } t[8] = ''; printf("%sn", t); return 0; } Problem solution in JavaScript programming. function processData(input) { input = input.split(':'); var hours = parseInt(input[0]); var timeFrame = input[2].slice(2); var seconds = input[2].slice(0,2); if ((timeFrame === 'PM') && (hours !== 12)) { hours += 12; } if ((hours === 12) && (timeFrame === 'AM')) { hours = '00'; } else if (hours < 10) { hours = '0' + hours.toString(); } else { hours = hours.toString(); } console.log([hours, input[1], seconds].join(':')); }; process.stdin.resume(); process.stdin.setEncoding("ascii"); _input = ""; process.stdin.on("data", function (input) { _input += input; }); process.stdin.on("end", function () { processData(_input); }); algorithm coding problems AlgorithmsHackerRank
public static String timeConversion(String s) { String ampm = s.substring(s.length()-2, s.length()-1); StringBuffer sb = new StringBuffer(s.substring(0, s.length()-2)); int start = Integer.parseInt(s.substring(0, 2)); if(s.contains("P")){ String sb1 = start == 12 ? "12": ""+(start+12); sb.replace(0, 2, "" +sb1); System.out.println(sb); } else { String sb1 = start == 12 ? "00": start > 9? ""+start: "0" +start; sb.replace(0, 2, "" +sb1); System.out.println(sb); } return sb.toString(); }}
n = input().replace("PM", ":PM").replace("AM", ":AM").split(":")if n[-1] == "PM": if n[0] != "12": n[0] = str(int(n[0]) + 12)else: if n[0] == "12": n[0] = "00"del n[3]time = ":".join(n)print(time)