题目链接:http://uva.onlinejudge.org/external/4/414.html
题目分析
这道题的题目挺长。其实要完成的任务是通过左右平移来拼接机器(左边和右边分别是一个固定的块,要整体平移),直到左右两边的机器有相接触的地方,此时统计还剩多少个空。通过字符串输入平移前机器的样子,输出平移后的间隙(即空格)。
拼接前 拼接后
左 右
XXXX XXXXX XXXX XXXXX
XXX XXXXXXX XXXXXXXXXX <<- 这行最先接触,接触后全部行停止平移
XXXXX XXXX XXXXX XXXX
XX XXXXXX XX XXXXXX
题目只需要求出平移后的结果,我们大可不必模拟每一步平移的过程,而是直接去算最后一步。
因为肯定是最长(X 最多)的那行先接触,所以它是无缝拼接,该行的空格数为 0;
其他行的空格数 = 最长行宽度 - 本行 X 数。
因此,只需要在全部输入后找出最长行,算出每行的空格空格数并累加起来即可。
解答
1 |
|