您的位置:首页 > 其它

UVAOJ 414 - Machined Surfaces

2011-08-01 08:54 399 查看
/*

之前一直用C做

对C里面的字符串处理还算比较了解

本以为C++已经做够强大

读取字符串是不会再出现讨厌的缓冲区问题

可后来屡屡碰壁

哎。。。 。。。

总算过了

还算有点收获

*/

#define LOCAL
#include<iostream>
#include<string>    //文件包含一定要写,人家的编译器可不像你用的那么“智能”
using namespace std;
int a[10000];
int main()
{
#ifdef LOCAL
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
#endif

int n,t,i,j,min,sum;
string s;
while(1)
{
cin>>n;
cin.get(); //相当于C里面的getchar(),用以接受cin在缓冲区里剩下的'\n'
if(!n)
return 0;
if(n==1)
{
getline(cin,s);//getline()还是很有用滴。。。
cout<<0<<endl;
continue;
}
for(j=0;j<n;j++)
{
t=0;
getline(cin,s);
for(i=0;i<25;i++)
if(s[i]=='X')
t++;
a[j]=25-t;
}
min=a[0];
sum=0;
for(i=1;i<n;i++)
if(a[i]<min)
min=a[i];
for(i=0;i<n;i++)
sum+=a[i]-min;
cout<<sum<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: