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

Gõ xâu

Đề bài

Mô tả

Bạn cần gõ một xâu s gồm n chữ cái Latinh thường bằng bàn phím. Ban đầu bạn có một xâu rỗng. Cho tới khi gõ xong toàn bộ xâu s, mỗi thao tác bạn được phép:

  • Thêm một ký tự bất kỳ vào cuối xâu hiện tại.

Ngoài ra, nhiều nhất một lần trong suốt quá trình, bạn được phép thực hiện thao tác đặc biệt:

  • Sao chép toàn bộ xâu hiện tại và nối nó vào chính nó (xâu hiện tại được nhân đôi độ dài).

Mỗi lần thực hiện một trong hai thao tác trên được tính là một thao tác. Hãy tìm số thao tác ít nhất để gõ được đúng xâu s.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n, độ dài của xâu cần gõ.
  • Dòng thứ hai chứa xâu s gồm n chữ cái Latinh thường.

Dữ liệu ra

  • In ra một số nguyên, số thao tác ít nhất cần dùng.

Ràng buộc

  • 1n100

Ví dụ

Input Output Giải thích
7
abcabca
5 Gõ abc (3 thao tác), sao chép để có abcabc (1 thao tác), rồi gõ ký tự a cuối cùng (1 thao tác). Tổng 5.
8
abcdefgh
8 Không có tiền tố nào nhân đôi khớp với xâu, nên phải gõ từng ký tự một, tốn 8 thao tác.

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