โจทย์ทั้งหมด
ง่าย 0 ข้อที่แก้แล้ว อัตราผ่าน 0%

ชั่วโมง นาที และวินาที

แปลงระยะเวลา (หน่วยวินาที) ให้อยู่ในรูปแบบข้อความที่อ่านง่ายและกระชับ

แยกระยะเวลาออกเป็นชั่วโมง นาที และวินาที ให้เขียนหน่วยเป็น h, m และ s ตามลำดับ โดยแต่ละหน่วยคั่นด้วยช่องว่างหนึ่งช่อง ข้ามหน่วยที่มีค่าเป็นศูนย์ ยกเว้นกรณีที่วินาทีเป็นศูนย์ ให้เขียนเป็น 0s

ให้เขียนฟังก์ชัน format_duration(seconds)

อินพุต

seconds: ระยะเวลาทั้งหมดในหน่วยวินาที

เอาต์พุต

คืนค่าระยะเวลาที่จัดรูปแบบแล้ว เช่น 2h 2m 5s

เงื่อนไข

0 ≤ seconds ≤ 1,000,000,000. จำนวนชั่วโมงอาจมากกว่า 23 ได้ เนื่องจากเป็นระยะเวลา ไม่ใช่เวลาของวัน

ตัวอย่าง

ตัวอย่างที่ 1
อินพุต:
seconds = 7325

ผลลัพธ์ที่คาดหวัง:
expected = "2h 2m 5s"
อินพุต:
long long seconds = 7325;

ผลลัพธ์ที่คาดหวัง:
std::string expected = "2h 2m 5s";
อินพุต:
long seconds = 7325;

ผลลัพธ์ที่คาดหวัง:
string expected = "2h 2m 5s";

คำอธิบาย

7325 = 2 × 3600 + 2 × 60 + 5

ตัวอย่างที่ 2
อินพุต:
seconds = 120

ผลลัพธ์ที่คาดหวัง:
expected = "2m"
อินพุต:
long long seconds = 120;

ผลลัพธ์ที่คาดหวัง:
std::string expected = "2m";
อินพุต:
long seconds = 120;

ผลลัพธ์ที่คาดหวัง:
string expected = "2m";

คำอธิบาย

120 วินาที เท่ากับ 2 นาทีพอดี ให้ละเว้นชั่วโมงและวินาทีที่เป็นศูนย์

แหล่งอ้างอิง

โจทย์นี้ปรับให้เหมาะกับ CodeUtility กรุณาทำตามคำชี้แจงและข้อจำกัดด้านบน

เรียนรู้จากคนอื่น

แนวทางจากชุมชน

ยังไม่มีวิธีทำที่เผยแพร่ ลองแก้โจทย์นี้เพื่อแชร์วิธีแรก