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

Con phố nhiều màu

Đề bài

Mô tả

n ngôi nhà nằm trên một con phố, đánh số từ 1 đến n từ trái sang phải. Khoảng cách giữa hai ngôi nhà liền kề bằng 1 đơn vị, nên khoảng cách giữa nhà i và nhà j|ji| đơn vị.

Ngôi nhà thứ i được sơn màu ci. Đảm bảo có ít nhất hai ngôi nhà khác màu nhau.

Bạn cần chọn hai ngôi nhà ij với 1i<jn sao cho chúng khác màu, tức cicj, và khoảng cách ji giữa chúng là lớn nhất có thể.

Hãy tìm khoảng cách lớn nhất đó.

Dữ liệu vào

  • Dòng đầu chứa một số nguyên n: số ngôi nhà.
  • Dòng thứ hai chứa n số nguyên c1,c2,,cn: màu của các ngôi nhà.

Dữ liệu ra

  • In ra một số nguyên: khoảng cách lớn nhất có thể chọn được.

Ràng buộc

  • 3n300000
  • 1cin
  • Đảm bảo tồn tại cặp chỉ số i<j với cicj.

Ví dụ

Input Output Giải thích
5
1 2 3 2 3
4 Chọn nhà 1 và nhà 5: màu 13, khoảng cách 51=4.
3
1 2 1
1 Nhà 1 và nhà 3 cùng màu 1, nên chỉ có thể chọn cặp kề nhau, khoảng cách 1.
7
1 1 3 1 1 1 1
4 Chọn nhà 3 (màu 3) và nhà 7 (màu 1): khoảng cách 73=4.

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.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.400 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0