hdu 1800 Flying to the Mars(简单模拟,string,字符串)

题目

又来了string的基本用法

//less than 30 digits
//等级长度甚至是超过了int64,所以要用字符串来模拟,然后注意去掉前导零
//最多重复的个数就是答案
//关于string的修改增加的用法

#include <cstdio>
#include<iostream>
#include <cstring>
#include <algorithm>
#include<string>
using namespace std;

int main()
{
    int n;
    char s[35];
    while(scanf("%d",&n)!=EOF)
    {
        string ss[3010];
        for(int i=0;i<n;i++)
        {
            scanf("%s",s);
            int l=strlen(s);
            int id=0;
            for(int j=0;j<l;j++)
            {
                if(s[j]!='0')break;
                id++;
            }
            for(int j=id;j<l;j++)
            {
                ss[i]+=s[j];
            }
        }
        sort(ss,ss+n);
        int ans=1;
        int maxx=1;
        for(int i=1;i<n;i++)
        {
            if(ss[i]==ss[i-1])ans++,maxx=max(maxx,ans);
            else 
                ans=1;
        }
        printf("%d
",maxx);
    }
    return 0;
}
View Code
原文地址:https://www.cnblogs.com/laiba2004/p/3894478.html