CF137D.Palindromes

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Friday is Polycarpus' favourite day of the week. Not because it is followed by the weekend, but because the lessons on Friday are 2 IT lessons, 2 math lessons and 2 literature lessons. Of course, Polycarpus has prepared to all of them, unlike his buddy Innocentius. Innocentius spent all evening playing his favourite game Fur2 and didn't have enough time to do the literature task. As Innocentius didn't want to get an F, he decided to do the task and read the book called "Storm and Calm" during the IT and Math lessons (he never used to have problems with these subjects). When the IT teacher Mr. Watkins saw this, he decided to give Innocentius another task so that the boy concentrated more on the lesson and less — on the staff that has nothing to do with IT.

Mr. Watkins said that a palindrome is a string that can be read the same way in either direction, from the left to the right and from the right to the left. A concatenation of strings aa , bb is a string abab that results from consecutive adding of string bb to string aa . Of course, Innocentius knew it all but the task was much harder than he could have imagined. Mr. Watkins asked change in the "Storm and Calm" the minimum number of characters so that the text of the book would also be a concatenation of no more than kk palindromes. Innocentius can't complete the task and therefore asks you to help him.

输入格式

The first input line contains a non-empty string ss which is the text of "Storm and Calm" (without spaces). The length of the string ss does not exceed 500500 characters. String ss consists of uppercase and lowercase Latin letters. The second line contains a single number kk ( 1<=k<=s1<=k<=|s| , where s|s| represents the length of the string ss ).

输出格式

Print on the first line the minimum number of changes that Innocentius will have to make. Print on the second line the string consisting of no more than kk palindromes. Each palindrome should be non-empty and consist of uppercase and lowercase Latin letters. Use the character "+" (ASCII-code 43) to separate consecutive palindromes. If there exist several solutions, print any of them.

The letters' case does matter, that is an uppercase letter is not considered equivalent to the corresponding lowercase letter.

输入输出样例

  • 输入#1

    abacaba
    1
    

    输出#1

    0
    abacaba
    
  • 输入#2

    abdcaba
    2
    

    输出#2

    1
    abdcdba
    
  • 输入#3

    abdcaba
    5
    

    输出#3

    0
    a+b+d+c+aba
    
  • 输入#4

    abacababababbcbabcd
    3
    

    输出#4

    1
    abacaba+babab+bcbabcb
    
首页