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

Ba Logo

Đề bài

Mô tả

Ba công ty muốn đặt logo của mình lên một tấm biển quảng cáo hình vuông. Logo của mỗi công ty là một hình chữ nhật có diện tích khác 0.

Ba logo được đặt lên tấm biển vuông sao cho chúng không chồng lên nhau và lấp kín toàn bộ tấm biển (không còn chỗ trống). Khi đặt một logo, có thể xoay nó đi 90 độ, nhưng các cạnh của logo luôn song song với các cạnh của tấm biển.

Cho kích thước ba logo, hãy xác định xem có thể xếp cả ba logo lên một tấm biển vuông theo các quy tắc trên hay không. Nếu được, hãy đưa ra một cách xếp bất kỳ.

Dữ liệu vào

Một dòng gồm sáu số nguyên dương x1,y1,x2,y2,x3,y3, trong đó xiyi lần lượt là chiều dài và chiều rộng của logo công ty thứ i.

Dữ liệu ra

Nếu không thể xếp cả ba logo lên một tấm biển vuông, in ra một số 1.

Ngược lại, dòng đầu tiên in ra n là độ dài cạnh của tấm biển vuông. Trong n dòng tiếp theo, mỗi dòng gồm n ký tự in hoa "A", "B" hoặc "C", mô tả cách xếp. Các ô cùng một ký tự phải tạo thành một hình chữ nhật đặc, sao cho:

  • Kích thước hình chữ nhật gồm các ký tự "A" bằng kích thước logo công ty thứ nhất,
  • Kích thước hình chữ nhật gồm các ký tự "B" bằng kích thước logo công ty thứ hai,
  • Kích thước hình chữ nhật gồm các ký tự "C" bằng kích thước logo công ty thứ ba.

Logo có thể được xoay. Tấm biển không được để trống bất kỳ ô nào. Nếu có nhiều cách xếp hợp lệ, in ra cách bất kỳ.

Ràng buộc

  • 1x1,y1,x2,y2,x3,y3100

Ví dụ

Input Output Giải thích
5 1 2 5 5 2 5
AAAAA
BBBBB
BBBBB
CCCCC
CCCCC
Biển vuông cạnh 5. Logo A (5×1) ở hàng trên, logo B (2×5) và logo C (5×2) xếp bên dưới.
4 4 2 6 4 2 6
AAAABB
AAAABB
AAAABB
AAAABB
CCCCBB
CCCCBB
Biển vuông cạnh 6. Logo A (4×4) chiếm góc trên trái, logo B (2×6 xoay thành 6×2) chiếm cột phải, logo C (4×2) lấp phần còn lại.

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