[Buổi 6][Hàm][ADV] Bài 1: Chuẩn hóa thời gian
Chuẩn hóa thời gian
Bối cảnh
Một đồng hồ nhận ba giá trị giờ, phút, giây nhưng dữ liệu có thể chưa chuẩn hóa. Ví dụ 1 giờ 125 phút 70 giây vẫn mô tả một khoảng thời gian hợp lệ.
Nhiệm vụ là đưa bộ ba về dạng chuẩn sao cho phút và giây đều nhỏ hơn 60. Bài này luyện cập nhật đồng thời nhiều biến bằng reference.
Yêu cầu
- Đọc ba số nguyên không âm
h,m,s. - Chuyển phần giây dư sang phút.
- Chuyển phần phút dư sang giờ.
- In
h m ssau khi chuẩn hóa.
Yêu cầu tổ chức code
Viết void normalizeTime(long long &h, long long &m, long long &s).
Lưu ý: Online Judge chủ yếu kiểm tra tính đúng của output. Yêu cầu tổ chức code được dùng để rèn đúng kỹ năng của buổi học và sẽ được giảng viên quan sát khi chữa bài.
Input
Ba số nguyên không âm h m s.
Output
Ba số nguyên chuẩn hóa, với 0 ≤ m,s < 60.
Ràng buộc
0 ≤ h,m,s ≤ 10^9.
Ví dụ 1
Input
1 125 70
Output
3 6 10
Giải thích
70 giây = 1 phút 10 giây, nên phút tăng từ 125 lên 126. 126 phút = 2 giờ 6 phút, nên giờ tăng từ 1 lên 3. Kết quả là 3 6 10.
Ví dụ 2
Input
0 0 0
Output
0 0 0
Giải thích
Cả ba giá trị đã bằng 0 nên không cần chuyển đổi; output giữ nguyên 0 0 0.
Thông tin học tập
- Module: M02
- Buổi: B06
- Loại bài: ADVANCED
- Độ khó: Hard
- Concepts: functions, pass-by-reference, normalization loops
- Giới hạn kiến thức: B01-B06
- Time limit: 2 second(s)
- Memory limit: 256 MB
- Point: 100
Comments