Đã cho chuỗi str, chúng ta cần chỉ định các ký tự tối thiểu được thêm vào trước chuỗi để tạo chuỗi palindrome
ví dụ.
Input : str = "ABC" Output : 2 We can make above string palindrome as "CBABC" by adding 'B' and 'C' at front. Input : str = "AACECAAAA"; Output : 2 We can make above string palindrome as AAAACECAAAA by adding two A's at front of string.
Đề nghị thực hành
Các ký tự tối thiểu được thêm vào phía trước để tạo chuỗi palindrome
Thử nó
Cách tiếp cận ngây thơ. Bắt đầu kiểm tra chuỗi mỗi lần nếu nó là một bảng màu và nếu không, sau đó xóa ký tự cuối cùng và kiểm tra lại. Khi chuỗi bị rút gọn thành một chuỗi nhạt hoặc một chuỗi trống thì số ký tự bị xóa từ cuối đến giờ sẽ là câu trả lời vì những ký tự đó có thể đã được chèn vào đầu chuỗi gốc theo thứ tự sẽ tạo thành chuỗi
Dưới đây là việc thực hiện các phương pháp trên
C++
// C++ program for getting minimum character to be
// added at front to make string palindrome
#include
using
namespace
std;
20
21
22
23
24_______1_______5
26
24_______1_______5
29
24
24_______13_______2
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}3
25
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}5
24_______1_______3
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
20
21
22
23
24
24_______1_______6
24_______1_______2
29
24
26
// C++ program for getting minimum character to be
2
25
// C++ program for getting minimum character to be
423
24_______419_______7
// C++ program for getting minimum character to be
824
24_______1_______5
// added at front to make string palindrome
224_______1_______5
// added at front to make string palindrome
524
24_______420_______8
// added at front to make string palindrome
924_______1_______3
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
#include
3For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
#include
6For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
23
21
using
0using
1____422_______2
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
using
7For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
23
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
namespace
1For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
namespace
4For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
namespace
6For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
24_______1_______6
24
24_______424_______3
24_______13_______9
std;
6For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
std;
826
Java
200
// added at front to make string palindrome
202
203
20
24_______1_______06
207
208
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}2
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}3
25
216
217
218
219_______1_______20
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
223
224
22
23
24
21
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
22
29
24
24_______1_______6
// C++ program for getting minimum character to be
2
24_______1_______40
206
242
243
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
245
// C++ program for getting minimum character to be
824
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
250
217
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
255
217
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// added at front to make string palindrome
8 260
217
262
21
#include
321
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
267
224
255
219
24
224
using
224
21
26
using
7 23
224
namespace
1
224
namespace
4224
284
217
286
219
288
224
290
21
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
std;
3For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
299
219
262
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}03
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
24_______1_______6
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}09
Trăn 3
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}10
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}11
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}12
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}13
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}14
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}15
24_______13_______17_______13_______18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}19
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}20
24
24_______13_______23
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
217
24_______13_______27
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}17
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}30
219
24_______420_______8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}34
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}36
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}40
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}42
21
22
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}45
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}23
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}48
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
219
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}27
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}30
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
219
24
24_______1_______2
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}59
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}60
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}62
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}65
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}66
24
24_______13_______69
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
// C++ program for getting minimum character to be
824_______13_______73
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
217
24_______13_______77
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
217
24
24_______420_______8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}3
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}19
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}85
217
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}87
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}90
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}93
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}77
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
219
21
using
2For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
using
7For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}66
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}73
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}48
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
219
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
21
211
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}69
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}18
215_______13_______30
219
218
24
24_______1_______21
24_______13_______9
224
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
226
227
228
C#
229
// added at front to make string palindrome
using
232
240
202
203
20
24_______1_______06
21
208
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
243
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}2
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}3
25
248
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
251
224
22
23
24
21
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
22
29
24
24_______1_______6
// C++ program for getting minimum character to be
2
24_______1_______40
206
242
271
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
245
// C++ program for getting minimum character to be
824
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
// added at front to make string palindrome
2For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
25
// added at front to make string palindrome
5
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// added at front to make string palindrome
8 284
21
#include
321
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
267
224
using
0224
using
224
21
26
using
7 23
224
namespace
1
224
namespace
4224
// C++ program for getting minimum character to be
04224
290
21
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
std;
3For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
// C++ program for getting minimum character to be
1521
// C++ program for getting minimum character to be
17For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
24_______1_______6
26
// C++ program for getting minimum character to be
23
Javascript
// C++ program for getting minimum character to be
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
26For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
28
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
20
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
32 // C++ program for getting minimum character to be
3321
// C++ program for getting minimum character to be
3521
// C++ program for getting minimum character to be
37
21
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}2
// C++ program for getting minimum character to be
40224
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
20
// C++ program for getting minimum character to be
44____1_______2
23
24
21
26
21
22
29
24
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
2For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
59// C++ program for getting minimum character to be
824
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
63For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// C++ program for getting minimum character to be
65
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
// added at front to make string palindrome
8 // C++ program for getting minimum character to be
68For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
23
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
21
#include
321
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
267
224
using
0224
using
224
21
26
21
using
7 23
224
namespace
1
224
namespace
4224
// C++ program for getting minimum character to be
9221
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
26
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
std;
3For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}8
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}9
std;
621
// added at front to make string palindrome
03
// added at front to make string palindrome
04// added at front to make string palindrome
05
24_______420_______07
Đầu ra
2
Độ phức tạp về thời gian. O[n2]
Không gian phụ trợ. Ô[1]
Cảm ơn bạn Sanny Kumar đã đề xuất phương pháp này
cách tiếp cận hiệu quả. Chúng ta có thể giải quyết vấn đề này một cách hiệu quả trong thời gian O[n] bằng cách sử dụng mảng lps của thuật toán KMP.
Đầu tiên, chúng ta nối chuỗi bằng cách nối chuỗi đã cho, một ký tự đặc biệt và đảo ngược chuỗi đã cho, sau đó chúng ta sẽ nhận được mảng lps cho chuỗi được nối này, nhớ lại rằng mỗi chỉ mục của mảng lps đại diện cho tiền tố thích hợp dài nhất cũng là hậu tố. Chúng ta có thể sử dụng mảng lps này để giải quyết vấn đề.
For string = AACECAAAA Concatenated String = AACECAAAA$AAAACECAA LPS array will be {0, 1, 0, 0, 0, 1, 2, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 6, 7}
Ở đây chúng ta chỉ quan tâm đến giá trị cuối cùng của mảng lps này vì nó cho chúng ta thấy hậu tố lớn nhất của chuỗi bị đảo ngược khớp với tiền tố của chuỗi gốc i. nhiều ký tự này đã thỏa mãn tính chất palindrome. Cuối cùng, số lượng ký tự tối thiểu cần thiết để biến chuỗi thành một bảng màu là độ dài của chuỗi đầu vào trừ đi mục cuối cùng của mảng lps của chúng ta.