杭電2000-2009題解

杭電2000-2009題解

大一實在是太閒了, 刷的杭電OJ, 因爲當時只學了C, 所有題解都是C

杭電acm2000

#include <stdio.h>
 int main()
 {
 char a,b,c,d,x,y,z;
       while(scanf("%c%c%c%c",&a,&b,&c,&d) != EOF)
       {
         x=a<b?a:b;    
         x=x<c?x:c;
         z=a>b?a:b;
         z=z>c?z:c;
         y=a+b+c-x-z;
         printf("%c %c %c\n",x,y,z);
       }
 }

杭電acm2001

#include <stdio.h>
#include <math.h>
int main()
{
    float a,b,c,d,s;
    while (scanf ("%f%f%f%f",&a,&b,&c,&d)!= EOF)
    {
        s=sqrt((a-c)*(a-c)+(b-d)*(b-d));
        printf ("%.2f\n",s);
    }
    return 0;
}

杭電acm2002

#include <stdio.h>
#define PI 3.1415927
int main()
{
    double r;
    while (scanf ("%lf",&r)!=EOF)
    {
        printf ("%.3lf\n",4*PI*r*r*r/3);
    }
    return 0;
}

杭電acm2003

# include <stdio.h>
# include <math.h>
int main()
{
    double i;
    while (scanf ("%lf",&i)!=EOF)
    {
        printf ("%.2lf\n",fabs(i));
    }
    return 0;
}

杭電acm2004

# include <stdio.h>
int main()
{
    int t;
    while (scanf ("%d",&t)!=EOF)
    {
        if (t<=100 && t>=0)
        {
            if (t>=90)
                printf ("A\n");
            else if (t>=80)
                printf ("B\n");
            else if (t>=70)
                printf ("C\n");    
            else if (t>=60)
                printf ("D\n");
            else
                printf ("E\n");
        }
        else
            printf ("Score is error!\n");
    }
    return 0;
}

杭電acm2005

# include <stdio.h>
int main()
{
    int a,b,c,t,i;
    int d[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    while (scanf ("%d/%d/%d",&a,&b,&c)!=EOF)
    {
        t=0;
        if ((a%4==0 && a%100!=0) || a%400==0)
            d[1]=29;
        else
            d[1]=28;
        for (i=0;i<b-1;i++)
        {
            t=t+d[i];
        }
        t=t+c;
        printf ("%d\n",t);
    }
    return 0;
}

杭電acm2006

include <stdio.h>

int main()
{
    int i,n,x;
    int a[100];
    while (scanf ("%d",&n)!=EOF)
    {
        for (i=0,x=1;i<n;i++)
        {
            scanf ("%d",&a[i]);
            if (a[i]%2!=0)
            {
                x=x*a[i];
            }
        }
        printf ("%d\n",x);
    }
    return 0;
}

杭電acm2007

include <stdio.h>

int main()
{
    int m,n,i,x,y,t;
    while (scanf ("%d%d",&m,&n)!=EOF)
    {
        if (m>n)
        {
            t=m;
            m=n;
            n=t;
        }
        for (i=m,x=0,y=0;i<=n;i++)
        {
            if (i%2==0)
            {
                x=x+i*i;
            }
            else
            {
                y=y+i*i*i;
            }
        }
        printf ("%d %d\n",x,y);
    }
    return 0;
}

杭電acm2008

# include <stdio.h>
int main()
{
    int i,n,a,b,c;
    float d[100];
    while (scanf ("%d",&n)!=EOF)
    {
        if (n==0)
        {
            continue;
        }
        for (i=0,a=0,b=0,c=0;i<n;i++)
        {
            scanf ("%f",&d[i]);
            if (d[i]<0)
            {
                a++;
            }
            if (d[i]==0)
            {
                b++;
            }
            if (d[i]>0)
            {
                c++;
            }
        }
        printf ("%d %d %d\n",a,b,c);
    }
    return 0;
}

杭電acm2009

# include <stdio.h>
# include <math.h>
int main()
{
    int m,n,i;
    double a[1000],x;
    while (scanf ("%d%d",&n,&m)!=EOF)
    {
        a[0]=n;
        x=a[0];
        for (i=1;i<m;i++)
        {
            a[i]=sqrt(a[i-1]);
            x=x+a[i];
        }
        printf ("%.2lf\n",x);
    }
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章