C++ bài 18.B6: Chuỗi nhân bản


Submit solution

Points: 15 (partial)
Time limit: 1.0s
Memory limit: 20M

Author:
Problem type

Cho một số nguyên dương \(N\) và một chuỗi \(S\) có độ dài \(N\) gồm các chữ cái tiếng Anh in thường.

Xác định xem chuỗi có phải là sự nối tiếp của hai bản sao của một chuỗi nào đó hay không. Tức là, xác định xem có tồn tại một chuỗi \(T\) sao cho \(S = T + T\).

Ràng buộc

\(1 \leq N \leq 100\)

\(S\) bao gồm các chữ cái tiếng Anh in thường.

\(|S| = N\)

Định dạng nhập

Dữ liệu nhập được cung cấp từ đầu vào chuẩn theo định dạng sau:

\(N\)

\(S\)

Định dạng xuất

Nếu \(S\) là sự nối tiếp của hai bản sao của một chuỗi nào đó, in ra "Yes"; ngược lại, in ra "No".

Ví dụ:

Input
6
abcabc
Output
Yes

Giả sử \(T = abc\), và \(S = T + T\).

Input
6
abcadc
Output
No

Giải thích ví dụ mẫu:

Ví dụ 1:
  • Input: 6 abcabc
  • Giải thích: Chuỗi "abcabc" có thể được chia thành hai bản sao của "abc", nên in ra "Yes".
Ví dụ 2:
  • Input: 6 abcadc
  • Giải thích: Chuỗi "abcadc" không thể chia thành hai bản sao giống nhau, nên in ra "No".

Lời giải bài tập này: Tại đây

Group giải đáp thắc mắc: Lập trình 24h

Fanpage CLB: CLB lập trình Full House- Việt Nam

Youtube: CLB Lập Trình Full House


Comments

There are no comments at the moment.