我必须读入一个整数,这将是后续行的长度。(文本行永远不会超过提供的长度)。
然后我必须阅读每一行文本并将空格尽可能均匀地转换为下划线。例如:
我会输入 30 的行长。然后是一行文本Hello this is a test string
。然后,所有的空间都将被转换为下划线,并填补了,从而使文本填充像这样给定的线路长度:Hello__this__is__a_test_string
。如您所见,原始文本的长度为 27 个字符,因此要将其填充到 30 个字符,我必须在原始文本中添加 3 个额外的空格,然后将这些空格转换为下划线字符。
请你能建议我可以解决这个问题的方法吗?
我所做的是将句子分成单词。然后计算出需要添加多少空格。然后遍历单词并为每个单词添加一个空格,直到您用完可以添加的空格。如果您有足够的空格需要在单词中添加多个单词(例如您有 5 个单词,但需要添加 13 个空格),只需将剩余空格数除以单词数,然后将该数字添加到每个单词先说一句话。然后你可以取剩余部分并遍历添加空格的单词,直到你完成。还要确保只在句子中除最后一个单词之外的所有单词中添加空格。