Trường trung học của tôi, và nhiều trường khác thực hiện một loại lịch trình gọi là Lịch quay khối. Đây là một cách để mọi người có 8 lớp, nhưng có 6 tiết trong một ngày học.
Có bốn ngày trong một lịch trình khối lặp đi lặp lại nhiều lần và không liên quan gì đến các ngày thực tế trong tuần. Mỗi người được chỉ định một số [1-4].
Cách thức hoạt động của lịch trình là bạn liệt kê tất cả các lớp học buổi sáng của mình 1-4: [1, 2, 3, 4]. Đây là lịch trình của bạn cho ngày đầu tiên, hoặc ngày 1. Phần còn lại của những ngày chỉ cần xoay danh sách: [2, 3, 4, 1], [3, 4, 1, 2], [4, 1, 2, 3].
Tuy nhiên, khoảng thời gian cuối cùng vào buổi sáng là "bỏ" và bạn không thấy giáo viên đó vào ngày hôm đó. Do đó những ngày là: [1, 2, 3], [2, 3, 4], [3, 4, 1], [4, 1, 2].
Buổi chiều là như nhau, ngoại trừ việc nó sử dụng thời gian 5-8thay vì: [5, 6, 7], [6, 7, 8], [7, 8, 5], [8, 5, 6].
Nhiệm vụ của bạn
Tất cả sự luân chuyển này rất khó để theo dõi, vì vậy bạn phải viết một chương trình để in ra lịch trình của tôi được đưa ra vào ngày nào là ngày đầu vào. Mã của bạn phải đặt Homeroom và Ăn trưa ở những điểm chính xác. Đây là đầu ra chính xác mà mã của bạn cần phải có cho đầu vào 1-4:
Homeroom Homeroom Homeroom Homeroom
Period 1 Period 2 Period 3 Period 4
Period 2 Period 3 Period 4 Period 1
Period 3 Period 4 Period 1 Period 2
Lunch Lunch Lunch Lunch
Period 5 Period 6 Period 7 Period 8
Period 6 Period 7 Period 8 Period 5
Period 7 Period 8 Period 5 Period 6
Nhưng chờ đã - Một điều nữa!
Đôi khi, vào ngày đầu tiên đến trường, hoặc vào những ngày đặc biệt khác, trường tôi có "Ngày 0". Điều này chỉ có nghĩa là tôi sẽ có tất cả các lớp học của mình ngày hôm đó cùng với tiết chủ nhiệm và bữa trưa. Mã của bạn sẽ phải đối phó với Ngày 0. Đây là đầu ra cho một ngày 0:
Homeroom
Period 1
Period 2
Period 3
Period 4
Lunch
Period 5
Period 6
Period 7
Period 8
Đây là mã golf để mã ngắn nhất trong byte thắng!
1, 2, 3, 5, 6, 7?