#P4347. [CERC2015] Book Borders
[CERC2015] Book Borders
Description
现有一本书,用固定宽度的字体和简单的贪婪算法来填充每行文字。书的内容是一个单词序列,每个单词包含一个或多个字符。
排版前,我们选择一个最大的行长度,并用m表示这个值。每行最多可以有m个字符,包括单词之间的空格字符。请使用排版算法简单地逐个处理单词,并在同一行上的两个连续单词之间打印每个单词,每个单词只有一个空格字符。而且如果在当前行上打印该字超过最大行长度m,则开始新行。
现在你得到了一个要排版的文本,并且正在试验最大行长度m的不同值。对于固定m,前导句是一个句子(由一个空格字符分隔的一系列单词),由行的第一个单词从上到下组成。在上例中,当样本文本以最大行长度14进行排版时,前导句是“对你来说是n”(its to you n)
给定一个文本和两个整数a和b,找出a和b之间每个候选最大行长度的前导句长度。句子的长度是它包含的字符总数,包括空格字符
Input Format
第一行包含要排版的文本——由一个空格字符分隔的一系列单词。每个单词都是一个字符串,由英语字母表中的一个或多个小写字母组成。 第二行包含两个整数a和b——如上所述的区间边缘。保证1<=w <=a<=b<=z<=50000, 其中w是文本中最长单词的长度,z是文本中包括空格字符的字符总数。
Output Format
输出b-a+1行——这些行的第k行应该包含一个整数——最大行长度等于a-1+k时前导句的总长度。
输入输出样例
输入样例#1
its a long way to the top if you wanna rock n roll
13 16
输出样例#1
22
12
12
15
its a long way to the top if you wanna rock n roll
13 16
22
12
12
15
京公网安备 11011102002149号