project euler problem 22对文件的处理

来源:互联网 发布:英雄联盟上路小兵数据 编辑:程序博客网 时间:2024/06/06 14:22
其实如果是小的输入的话,是个水题,但是这里是文件输入方式的,所以考查的是文件输入……刚才会了文件的读取之后,这题正好可以运用,哈哈……
#include <iostream>#include <map>#include <deque>#include <queue>#include <stack>#include <string>#include <cstring>#include <cstdio>#include <cmath>#include <algorithm>#include <map>#include <set>using namespace std;int main(){    freopen("names.txt","r",stdin);    string str,s,a[60000];    cin>>str;    int j=0,k,i;    for(i=0;i<str.length();i++)        if(str[i]>='A'&&str[i]<='Z') s+=str[i];        else        {            if(s.length()==0) continue;            a[j++]=s;            s="";        }    sort(a,a+j);    long long sum=0,sum1;    for(i=0;i<j;i++)    {        sum1=0;        for(k=0;k<a[i].length();k++)            sum1+=a[i][k]-'A'+1;        sum+=sum1*(i+1);    }    cout<<sum<<endl;    return 0;}

原创粉丝点击