Kiểm tra xâu ABC

Đề bài

Mô tả

Cho một xâu S chỉ gồm các ký tự thường a, b, c. Bạn cần kiểm tra xem S có thể được tạo ra theo quy trình sau hay không:

  1. Bạn A viết ra một xâu gồm một số ký tự a (ít nhất một ký tự).
  2. Bạn B thêm vào cuối xâu một số ký tự b (ít nhất một ký tự).
  3. Bạn C thêm vào cuối xâu một số ký tự c, với số lượng ký tự c phải bằng số lượng ký tự a hoặc bằng số lượng ký tự b trong xâu ở thời điểm đó (có thể bằng cả hai). Ít nhất một ký tự c được thêm vào.

Nói cách khác, S hợp lệ khi và chỉ khi S có dạng axbycz với x,y,z≥1 và z=x hoặc z=y.

Hãy in ra YES nếu S có thể được tạo theo cách trên, ngược lại in NO.

Dữ liệu vào

  • Một dòng duy nhất chứa xâu S (1≤|S|≤5000), chỉ gồm các ký tự a, b, c.

Dữ liệu ra

  • In ra YES hoặc NO.

Ví dụ

Input Output Giải thích
aaabccc YES Số c (bằng 3) bằng số a (bằng 3).
bbacc NO Thứ tự các ký tự không đúng: có a xuất hiện sau b.
aabc YES Số c (bằng 1) bằng số b (bằng 1).

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.402 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.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0