Ông Jones muốn thực hiện một chuyến đi khứ hồi bằng xe đạp của mình. Anh ta muốn đến thăm một số thành phố theo thứ tự tùy ý, nhưng tuyến đường của anh ta không được tự đi qua, vì anh ta ghét phải ở cùng một nơi hai lần trong các ngày lễ của mình. Vì anh ấy thực sự thích đạp xe, chiều dài của tuyến đường của anh ấy hoàn toàn không liên quan, nhưng anh ấy không thích lái xe quanh cảnh quan mà không có mục tiêu. Con đường anh ấy thích là từ thành phố theo đường thẳng đến nơi khác, không có đường vòng.
Vì Mr Jones là một tay golf đam mê mã, anh ta muốn bạn tìm một chương trình, kế hoạch một chuyến đi khứ hồi cho anh ta, đưa ra một loạt các thành phố. Đầu vào có dạng A (B|C)
. A
là tên của thành phố B
và C
là tọa độ của nó. Bạn có thể giả sử rằng tọa độ là dương và nhỏ hơn 1000. Các tập dữ liệu cho các thành phố được phân tách bằng dòng. Đây là một ví dụ, về cách một đầu vào ví dụ có thể trông như thế nào:
Một số (1 | 10) ACity (3 | 4) Bất cứ nơi nào (7 | 7) Nhà (5 | 1)
Ông Jones không phải là người phạm tội, ông chỉ muốn có một chương trình hữu ích. Do đó, bạn có thể tự quyết định đầu ra trông như thế nào, miễn là nó phù hợp với các tiêu chí này:
- Đầu ra là một bản đồ của các thành phố, với tuyến đường được vẽ giữa chúng. Nếu bất cứ điều gì là chính xác, tuyến đường không nên tự trùng lặp và sẽ kết thúc ở nơi nó bắt đầu
- Các tọa độ giống như trong lập trình thông thường: (1 | 1) nằm ở góc NW. Thêm loại thước kẻ vào viền bản đồ, để dễ đọc
- Tên thành phố phải được ghi trên bản đồ, nhưng vui lòng sử dụng các chữ viết tắt được giải thích ở một nơi khác trên bản đồ
- Bản đồ có thể là cả nghệ thuật ASCII hoặc hình ảnh
- Giữ đầu ra dễ đọc
Một đầu ra có thể trông như thế này:
1234567 1 D 2 * * 3 * * 4 B * 5 * * 6 * * 7 * C số 8* ** 9 * * 10A ** A: B: ACity C: bất cứ nơi nào D: nhà
Chương trình có số char nhỏ nhất sẽ thắng. Tôi không đếm các tham số cho trình biên dịch / trình thông dịch, nếu chúng cần để biên dịch, nhưng xin đừng lạm dụng quy tắc này. Quy tắc golf thông thường áp dụng.
Đây là một thử nghiệm khác. Đầu ra của bạn không phải phù hợp với tôi, bạn cũng không phải chọn con đường giống như tôi. Đầu ra được vẽ bằng tay và hiển thị một đầu ra có thể. Đầu vào:
nhà (5 | 7) siêu thị (13 | 12) công viên (15 | 5) quảng trường mới (9 | 16) nhà của bạn bè (20 | 11) lâu đài cổ (14 | 21) ven sông (1 | 20) bãi biển (10 | 1) rạp chiếu phim (21 | 18) rừng (23 | 7) hòn đảo nhỏ (21 | 1) bảo tàng golf-code (6 | 25) sân bay (18 | 25) quán trà (24 | 14) nhà hàng (24 | 22) cây cầu lớn (3 | 12) Tòa nhà SO (25 | 9)
Và đây là một ví dụ đầu ra:
1111111111222222 1234567890123456789012345 1 H * * K 2 * * * * 3 * * * * 4 * * ** * 5 * C * 6 * * 7 AJ số 8 * * 9 * Q 10 * * 11 * *** E * 12 PB *** * * 13 * * * * 14 * * * N 15 * * * * 16 * D * * 17 * * * * 18 * * tôi * 19 * * * * 20G * * * 21 * F * * 22 * ** * O 23 * ** * ** 24 * ** * * 25 L ** M ** Một ngôi nhà B: siêu thị C: công viên D: quảng trường mới E: nhà của bạn F: lâu đài cổ G: ven sông H: bãi biển Tôi: rạp chiếu phim J: rừng K: hòn đảo nhỏ L: bảo tàng golf-code M: sân bay N: quán trà O: nhà hàng P: cây cầu vĩ đại Q: Tòa nhà SO
Tôi không phải là người bản ngữ nói tiếng Anh. Hãy sửa ngôn ngữ và ngữ pháp của tôi, nếu cần thiết.