现在的位置: 首页 > 综合 > 正文

UVAOJ 414 – Machined Surfaces

2014年08月08日 ⁄ 综合 ⁄ 共 641字 ⁄ 字号 评论关闭

/*
之前一直用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;
}
【上篇】
【下篇】

抱歉!评论已关闭.