Short Problem Definition:
You are given time in AM/PM format. Convert this into a 24 hour format.
Link
Complexity:
time complexity is O(?)
space complexity is O(?)
Execution:
Transforming date formats without the use of the proper libraries is a disaster waiting to happen. Date formats are ever changing and a waste of engineering effort. Just use whatever package comes with your language…
Solution:
#!/usr/bin/py
from datetime import datetime
def convertToEuTime(us_time):
return datetime.strptime(us_time, '%I:%M:%S%p').strftime('%H:%M:%S')
if __name__ == '__main__':
us_time = raw_input()
print convertToEuTime(us_time)
use std::io;
fn main() {
let mut line = String::new();
io::stdin().read_line(&mut line).ok().expect("Failed to read line");
let a: String = line.chars().skip(0).take(2).collect();
let b: String = line.chars().skip(3).take(2).collect();
let c: String = line.chars().skip(6).take(2).collect();
let d: String = line.chars().skip(8).take(2).collect();
let a = a.trim().parse::<u32>().unwrap();
let b = b.trim().parse::<u32>().unwrap();
let c = c.trim().parse::<u32>().unwrap();
let a = (a % 12) + match d.as_ref() {
"AM" => 0,
"PM" => 12,
_ => panic!("Unknown date type"),
};
println!("{:02}:{:02}:{:02}", a, b, c);
}