HUD 1106 排序

来源:互联网 发布:北京房价数据app 编辑:程序博客网 时间:2024/06/04 00:33

虽然说这是个水题吧!但是并没有想象中的那么水!!!容易错!WA了好几次!!

题目意思很明了,就不多说了!

有几个地方需要特别注意,我都是因为这几个地方WA的大哭

1、注意开始、中间、最后5重叠的现象

2、注意 111115 以及555551这两组数据,特别容易忽视

3、对于像我这样的小菜鸟 在自己WA的情况下,又不知道自己哪里错了的前提下,千万千万别看被人的,别人的思路和你不同,小心被牵着鼻子走,最后自己的问题没解决,不了了之!!

#include<stdio.h>#include<string.h>int main(void){    char a[1001];    __int64 b[1000];    int i,s,x,j,l,temp;    while(scanf("%s",&a)!=EOF)    {        s=strlen(a);        j=0;        x=0;        for(i=0;i<s;i++)        {           if(a[i]=='5'&&a[i-1]!='5'&&i!=0)           {               b[j]=x;               j++;               x=0;           }           else if(a[i]!='5')           {               x=x*10+(a[i]-'0');           }           if(a[i]!='5'&&i==s-1)           {               b[j]=x;                j++;           }        }        for(i=0;i<j-1;i++)        {            for(l=i+1;l<j;l++)            {                if(b[i]>b[l])                {                    temp=b[i];                    b[i]=b[l];                    b[l]=temp;                }            }        }        for(i=0;i<j-1;i++)        {            printf("%I64d ",b[i]);        }        printf("%I64d\n",b[j-1]);    }    return 0;}
还有好的方法欢迎指教!

原创粉丝点击