//读懂题意:将左边的字符串与右边的字符串进行合并,以最长的作为标准,问其余的合并时候剩余的空格! 题目中第一个例的合并之后的形式:
//XXXX XXXXX
//XXXXXXXXXX
//XXXXX XXXX
//XX XXXXXX
//求中间剩余的空格数!
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string input[15];
int c[15];
int main()
{
int n, i, j, max, ans;
while (cin >> n)
{
cin.get();
if (n == 0) break;
memset(c, 0, sizeof(c));
ans = 0;
for (i = 0; i < n; i++)
{
getline(cin, input[i]);
for (j = 0; j < input[i].length(); j++)
if (input[i][j] == 'X')
c[i]++;
}
sort(c, c+n);
max = c[n-1];
for (i = 0; i < n; i++)
ans += c[n-1]-c[i];
cout << ans << endl;
}
system("pause");
}
poj 1493 Machined Surfaces
最新推荐文章于 2018-10-30 21:34:41 发布
本文介绍了一种字符串处理算法,该算法通过合并两个字符串并计算相对于最长字符串的空格差来解决问题。具体实现包括读取输入、计算每个字符串中特定字符的数量、找出最长字符串,并计算其余字符串与之相比的空格数量总和。
498

被折叠的 条评论
为什么被折叠?



