[Buổi 1][Kiểu dữ liệu][ADV] Bài 1: Đồng hồ nhiều ngày


LÀM BÀI

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Đồng hồ nhiều ngày

Bối cảnh

Một bộ đếm thời gian có thể chạy liên tục trong nhiều ngày và chỉ lưu một số duy nhất: tổng số giây đã trôi qua. Khi hiển thị, hệ thống cần tách con số đó thành ngày, giờ, phút và giây.

Khác với bài đổi giờ–phút–giây cơ bản, lần này bạn phải thực hiện việc quy đổi qua nhiều tầng. Cách an toàn là luôn xử lý từ đơn vị lớn nhất xuống nhỏ nhất và sau mỗi bước chỉ tiếp tục với phần dư còn lại.

Yêu cầu

Hãy tách s theo bốn đơn vị:

  1. day: số ngày đầy đủ (1 ngày = 86400 giây).
  2. hour: số giờ còn lại sau khi đã tách ngày.
  3. minute: số phút còn lại sau khi đã tách giờ.
  4. second: số giây cuối cùng.

Sau mỗi bước, chỉ dùng phần dư để tiếp tục quy đổi. Kết quả phải thỏa 0 ≤ hour < 24, 0 ≤ minute, second < 60.

Input

Dữ liệu vào được cung cấp theo định dạng sau:

Một số nguyên không âm s.

Hãy đọc các giá trị theo đúng thứ tự và ý nghĩa đã mô tả trong đề bài.

Output

In kết quả theo đúng định dạng sau:

Bốn số nguyên day hour minute second.

Không in thêm lời giải thích, nhãn hoặc ký tự ngoài phần kết quả được yêu cầu.

Ràng buộc

0≤s≤10^15.

Ví dụ 1

Input

0

Output

0 0 0 0

Giải thích ví dụ

0 giây có 0 ngày đầy đủ, còn 0 giây. Phần còn lại có 0 giờ, tiếp tục còn 0 giây, tương ứng 0 phút và 0 giây. Kết quả: 0 0 0 0.

Ví dụ 2

Input

86401

Output

1 0 0 1

Giải thích ví dụ

86401 giây có 1 ngày đầy đủ, còn 1 giây. Phần còn lại có 0 giờ, tiếp tục còn 1 giây, tương ứng 0 phút và 1 giây. Kết quả: 1 0 0 1.

Thông tin học tập

  • Buổi: B01
  • Concepts: integer division, modulo, multi-level unit conversion
  • Giới hạn kiến thức: B01
  • Time limit: 1 second
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo