1 条题解

  • 0
    @ 2024-12-24 9:48:47

    C :

    #include <stdio.h>
    #include <string.h>
    int main()
    {
    	int a[100]={0},i,j,len,num=0,check=0;
    	char c[100],b[100];
    	while(gets(c))
    	{   num=0;
            len=strlen(c);
    		for(i=0;i<len;i++)
    		{
    			if(i==0)
    			{
    			  b[0]=c[0];
    			  a[0]++;
    			  num++;
    			}
    			else
    			{
    				for(j=0;j<num;j++)
    				{
    					if(c[i]==b[j])
    					{
    						a[j]++;
    						
    						check++;
    						break;
    					}
    				}
    				if(check==0)
    				{
    					b[num++]=c[i];
    					a[num-1]++;
    				}
    				
    				check=0;
    			}
    		}
    		for(i=0;i<num;i++)
    			printf("%c:%d\n",b[i],a[i]);
    		for(i=0;i<num;i++)
    			a[i]=b[i]=0;
    	}
    	return 0;
    }
    

    C++ :

    #include <bits/stdc++.h>
    using namespace std;
    struct node
    {
        char num;
        int data;
        int cc;
        node()
        {
            data=0;
            cc=0;
        }
    };
    int cmp(node aa,node bb)
    {
        return aa.cc<bb.cc;
    }
    int main()
    {
        //freopen("in.txt","r",stdin);
        //freopen("out.txt","w",stdout);
        char a[200];
        while(scanf("%s",a)!=EOF){
            node b[27];
            int kk=1;
            int len=strlen(a);
            for (int i=0;i<len;i++){
                int ss=a[i]-'a';
                if (b[ss].cc==0){
                    b[ss].num=a[i];
                    b[ss].cc=kk;
                    kk++;
                }
                b[ss].data++;
            }
            sort(b,b+27,cmp);
            for (int i=0;i<27;i++){
                if (b[i].cc>0) {
                    printf("%c:%d\n",b[i].num,b[i].data);
                }
            }
        }
        return 0;
    }
    
    
    • 1

    信息

    ID
    661
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者