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

Xếp tượng trên đảo

Đề bài

Mô tả

N hòn đảo được đánh số từ 1 đến N, nối với nhau bởi các cây cầu tạo thành một chu trình đơn: có cầu nối đảo 1 với 2, đảo 2 với 3, ..., đảo N1 với N, và một cầu nối đảo N với đảo 1.

Trên mỗi đảo có một bệ đỡ. Có đúng N1 bức tượng, mỗi bức mang một màu khác nhau, mỗi bức đang đặt trên một bệ đỡ; đúng một đảo có bệ đỡ trống (không có tượng).

Người dân muốn sắp xếp lại các bức tượng theo một thứ tự mong muốn. Mỗi bước, họ chọn một đảo kề với đảo đang có bệ đỡ trống, rồi khiêng bức tượng trên đảo đó qua cầu để đặt vào bệ đỡ trống (đảo được khiêng đi trở thành bệ đỡ trống mới).

Hãy xác định xem có thể đưa các bức tượng về đúng thứ tự mong muốn hay không.

Dữ liệu vào

  • Dòng đầu chứa số nguyên N, tổng số đảo.
  • Dòng thứ hai chứa N số nguyên ai: bức tượng đang đặt trên đảo thứ i. Nếu ai=0 thì đảo đó có bệ đỡ trống. Các ai đôi một khác nhau.
  • Dòng thứ ba chứa N số nguyên bi: bức tượng mong muốn ở đảo thứ i. Nếu bi=0 thì đảo đó cần để trống. Các bi đôi một khác nhau.

Dữ liệu ra

In ra YES nếu có thể đạt được cấu hình mong muốn, ngược lại in ra NO.

Ràng buộc

  • 2N200000
  • 0ai,biN1
  • Các ai đôi một khác nhau; các bi đôi một khác nhau.

Ví dụ

Input Output Giải thích
3
1 0 2
2 0 1
YES Khiêng tượng 1 từ đảo 1 sang đảo 2, rồi tượng 2 từ đảo 3 sang đảo 1, cuối cùng tượng 1 từ đảo 2 sang đảo 3.
2
1 0
0 1
YES Khiêng tượng 1 từ đảo 1 sang đảo 2.
4
1 2 3 0
0 3 2 1
NO Không có dãy bước di chuyển nào cho ra cấu hình mong muố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