zl程序教程

您现在的位置是:首页 >  其它

当前栏目

UVa 414 – Machined Surfaces

414 UVa
2023-06-13 09:11:53 时间

大家好,又见面了,我是你们的朋友全栈君。

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

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

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

#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>

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;
}

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/139506.html原文链接:https://javaforall.cn