UVa 414 - Machined Surfaces

题目:n个由X和空格组成的串,两边有至少一个X,将n个串压缩,每次每行消除一个空格,问到不能消除时剩余的空格。

分析:简单题。统计全体空格数sum_b和最少空格数min_b,则结果就是sum_b - n*min_b。

注意:利用gets或者getline读入串。

#include 
#include 
#include 
#include 

using namespace std;

char data[30];

int main()
{
	int n;
	while ( ~scanf("%d",&n) && n ) {
		getchar();
		int sum = 0,min = 26;
		for ( int i = 0 ; i < n ; ++ i ) {
			gets(data);
			int count = 0;
			for ( int j = 0 ; data[j] ; ++ j )
				count += (data[j] != 'X');
			if ( count < min ) min = count;
			sum += count;
		}
		
		printf("%d\n",sum-min*n);	
	}
	return 0;
}

你可能感兴趣的:(解题报告,入门题)