Chương trình / chức năng của bạn, vv sẽ có 2 đầu vào. Đầu tiên sẽ là danh sách những người đã đến bữa tiệc của tôi và khi nào. Thí dụ:
Kevin 13:02
Ruby 5
Sam 3
Lisa 6
Bob 12
Điều đó nghĩa là gì? Điều đó có nghĩa là Kevin đã đến bữa tiệc của tôi trước (lúc 13:02, giờ 24 giờ), sau đó là Ruby 5 phút sau, rồi Sam 3 phút sau, rồi Lisa 6 phút sau, và cuối cùng là Bob 12 phút sau.
Đầu vào thứ hai sẽ là khi bữa tiệc của tôi bắt đầu. Thí dụ:
13:15
(Thời gian 24 giờ). Đầu ra của bạn phải là danh sách những người đến trễ. (Bất cứ ai chính xác về thời gian đều ổn.) Ví dụ tính toán (ví dụ: không xuất ra những thứ này)
Kevin 13:02
Ruby 13:07
Sam 13:10
Lisa 13:16
Bob 13:28
Lisa và Bob đến sau 13:15
, do đó chương trình này sẽ in "Lisa, Bob".
Giả định đầu vào
- Đầu vào 1 sẽ luôn là một tên (regex
[A-Z][a-z]*
), sau đó là khoảng trắng, sau đó là thời gian 24 giờ ở dạnghours:minutes
trên dòng đầu tiên, sau đó là tên, khoảng trắng và số nguyên dương (số phút sau) trên các dòng tiếp theo . Sẽ luôn có ít nhất 1 dòng. - Nếu bạn muốn, bạn có thể lấy đầu vào 1 với bất kỳ ký tự nào khác thay vì ngắt dòng.
- Đầu vào 2 sẽ ở định dạng
hours:minutes
. - Bạn có thể lấy đầu vào của mình dưới dạng một chuỗi được phân tách bằng bất kỳ ký tự nào nếu bạn muốn. Đây là tùy chọn.
- Đừng lo lắng về ngày giao nhau. Các bữa tiệc của tôi không bao giờ đến sau
23:59
.
Quy tắc đầu ra
- Đầu ra có thể là giá trị trả về của hàm hoặc một chuỗi được lặp lại cho STDIN, một tệp, v.v. Bạn phải trả về một chuỗi hoặc một mảng / danh sách.
- Nếu bạn trả về một chuỗi, thì đó phải là mỗi người trễ (thứ tự không quan trọng), được phân tách bằng bất kỳ dấu phân cách không chữ và số nào.
- Nếu bạn trả về một mảng / danh sách, nó phải là một danh sách của tất cả những người đến trễ.
(regex [A-Z][a-z]*
)" Điều này có gợi ý rằng tên có thể trống không?
23:59
sao