Untitled

 avatar
unknown
plain_text
2 years ago
4.0 kB
3
Indexable
Tạo một chức năng để trả lại người có số lượng lớn nhất trong số những người được liên hệ cuối cùng khi mạng liên lạc khẩn cấp và người bắt đầu liên lạc được cung cấp.

 

 

[Ví dụ]

Mạng liên lạc khẩn cấp được hiển thị bên dưới.



 

Mỗi vòng tròn đại diện cho một cá nhân. Số trong vòng tròn có nghĩa là người đánh số của người. Vòng tròn màu đỏ đại diện cho người bắt đầu liên lạc khẩn cấp. Mũi tên đại diện cho hướng liên hệ. Trong ví dụ trên, số 7 và số 1 có thể được liên lạc với nhau. Số 2 có thể liên hệ với số 7 nhưng không liên hệ ngược lại.

 

Khi mạng liên lạc khẩn cấp được kích hoạt, Người đầu tiên số 2 liên lạc đồng thời với số 7 và số 15. (Giả sử rằng chia tỷ lệ nhiều bên được sử dụng.)

 



 

 

 

Tiếp theo, số 7 liên hệ số 1 và số 15 liên hệ số 4. Giả sử những liên hệ này xảy ra cùng một lúc.

 



 

 

 

Tiếp theo, số 1 liên lạc số 8 và số 17 đồng thời, và số 4 liên lạc số 10 cùng một lúc.

 

Vì số 7 và số 2 đã được liên lạc, họ không được liên lạc lại.

 



 

 

 

 

 

Sơ đồ trên cho thấy điều kiện khi tất cả các liên hệ được hoàn thành. Số 8, số 10 và số 17 là những người liên lạc cuối cùng cùng một lúc. Vì số 17 có số lớn nhất trong số ba người đó, hàm sẽ trả về 17.

 

※Không. 3, 6, 11 và 22 sẽ không được liên lạc ngay cả khi tất cả các liên hệ đã hoàn tất.

 

 

[Hạn chế]

Có thể liên hệ với tối đa 100 người. Các số được gán có thể nằm trong khoảng từ 1 ~ 100.

Giống như số 5 không được hiển thị trong ví dụ trên, có thể có một số số không được hiển thị trong mạng liên hệ.

Nếu một người liên hệ với nhiều người, cuộc gọi nhiều bên luôn được sử dụng để họ sẽ được liên lạc cùng một lúc. Thời gian cần thiết để liên lạc luôn giống nhau. (Thời gian cần thiết để một người gọi cho người khác là như nhau.)

Thông tin mạng liên lạc khẩn cấp được chia sẻ trước và một người đã được liên hệ sẽ không được liên lạc lại.

Như trong ví dụ, những người như số 3, số 6, số 11 và số 22 sẽ không bao giờ được liên lạc.

 

 

[Đầu vào]

Dòng đầu tiên của tệp đầu vào cung cấp độ dài của dữ liệu đầu vào và điểm bắt đầu.

Dữ liệu được cung cấp trong các dòng tiếp theo được hiểu là {from, to, from, to, ...}. Ví dụ trên sẽ được thể hiện dưới dạng {2, 7, 11, 6, 6, 2, 2, 15, 15, 4, 4, 2, 4, 10, 7, 1, 1, 7, 1, 8, 1, 17, 3, 22}.

Vì trình tự không đáng kể, đầu vào sau đây cũng thể hiện cùng một mạng liên lạc khẩn cấp. (Có thể có nhiều đầu vào khác nhau thể hiện cùng một mạng liên lạc khẩn cấp.)

{1, 17, 3, 22, 1, 8, 1, 7, 7, 1, 2, 7, 2, 15, 15, 4, 6, 2, 11, 6, 4, 10, 4, 2}

Các cặp {from, to} giống nhau có thể được lặp lại nhiều lần như hình dưới đây. Không có sự khác biệt của một bản ghi hoặc nhiều bản ghi.

{1, 17, 1, 17, 1, 17, 3, 22, 1, 8, 1, 7, 7, 1, 2, 7, 2, 15, 15, 4, 6, 2, 11, 6, 4, 10, 11, 6, 4, 2}

 

 

[Đầu ra]

Mỗi dòng trong số 10 dòng của tệp đầu ra chứa câu trả lời cho từng trường hợp trong số 10 trường hợp kiểm thử. Mỗi dòng bắt đầu bằng '#x' theo sau là nguồn cấp dữ liệu dòng và sau đó là câu trả lời.
Editor is loading...