trang chủ / bài tập / coins3v2

Ba Đồng Xu

Đề bài

Mô tả

Có ba đồng xu được ký hiệu là A, B, C, đôi một có khối lượng khác nhau. Người ta cân từng cặp đồng xu trên cân thăng bằng và ghi lại kết quả của cả ba lần cân.

Mỗi kết quả là một dòng có đúng ba ký tự dạng XoY trong đó:

  • XY là hai chữ cái khác nhau trong {A,B,C}.
  • o là một trong hai ký tự > hoặc <, mang ý nghĩa khối lượng của X lớn hơn hay nhỏ hơn khối lượng của Y.

Hãy xác định thứ tự khối lượng tăng dần của ba đồng xu, hoặc cho biết các kết quả cân là mâu thuẫn.

Một dòng nào đó không đúng định dạng nêu trên (chứa ký tự lạ, độ dài khác 3, hai chữ cái trùng nhau, v.v.) cũng được coi là kết quả không hợp lệ — trong trường hợp đó in ra Impossible.

Dữ liệu vào

Gồm đúng ba dòng, mỗi dòng là một kết quả cân theo định dạng đã mô tả ở trên. Mỗi cặp đồng xu được cân đúng một lần.

Dữ liệu ra

  • Nếu các kết quả cân nhất quán: in ra một chuỗi gồm ba ký tự là hoán vị của ABC, ứng với thứ tự khối lượng từ nhẹ nhất đến nặng nhất.
  • Nếu có mâu thuẫn hoặc dữ liệu không hợp lệ: in ra Impossible.

Ràng buộc

  • Mỗi cặp trong {A,B,C} xuất hiện đúng một lần.
  • Không có hai đồng xu nào cùng khối lượng.

Ví dụ

Input Output Giải thích
C>A
CB>A
ACB Suy ra B nặng nhất, kế tiếp là C, nhẹ nhất là A.
CBC>A Impossible Từ hai dòng đầu suy ra C < A, mâu thuẫn với dòng thứ ba.
A>B
B>C
C>A
Impossible Ba kết quả tạo thành vòng tròn A > B > C > A nên mâu thuẫn.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0