Sunday, May 20, 2012

UVA Solution for 11498

//11498
#include<stdio.h>


int main()
{
    long n,x,x1,y1,y,t1,i;
    while(scanf("%ld",&n)==1)
    {
    if(n==0)
    break;
    scanf("%ld%ld",&x,&y);
    for(i=0;i<n;i++)
      {
      scanf("%ld%ld",&x1,&y1);
      if(x==x1||y==y1)
      printf("divisa\n");
      if(x1>x&&y1>y)
      printf("NE\n");
      if(x1<x&&y1>y)
      printf("NO\n");
        if(x1<x&&y1<y)
      printf("SO\n");
        if(x1>x&&y1<y)
      printf("SE\n");     
      }
    }
}

UVA Solution for 11479

//11479
#include<stdio.h>
int main()
{
    long a,b,c,t,i,max;
    while(scanf("%ld",&t)==1)
   
    {
    for(i=0;i<t;i++)
    {
    scanf("%ld%ld%ld",&a,&b,&c);   
    max=0;
    if(a>max) max=a;           
    if(b>max) max=b;
    if(c>max) max=c;
   
    if ((a+b+c-max)<=max)
    printf("Case %d: Invalid\n",i+1);
    else if(a==b&&b==c)
    printf("Case %d: Equilateral\n",i+1);
    else if(a==b||a==c||b==c)
    printf("Case %d: Isosceles\n",i+1);
    else if(a!=b&&a!=c&&b!=c)
    printf("Case %d: Scalene\n",i+1);
    }
   
    }
}

UVA Solution for 11462

//11462
#include<stdio.h>
#define max 2000005
int main()
{
    int m,n,x[max],i,j,k;
    while(scanf("%d",&n)==1)
    {
if(n==0)
break;

    for(i=1;i<=n;i++)
      {
      scanf("%d",&x[i]);
      }
      m=0;
    for(i=0;i<=110;i++)
    {
    for(j=1;j<=n;j++)
      {
      if(x[j]==i && m<n-1)
        {
         printf("%d ",i);
         m++;
         }
         if(x[j]==i && m==n-1)
        {
         printf("%d\n",i);
         m++;
         }
         if(m==n)
         break;
        }
      }
     
    }
    return 0;
}

UVA Solution for 11462

//11462
#include<stdio.h>
int main()
{
    int m,n,x[2000001],i,j,k;
    while(scanf("%d",&n)==1)
    {
if(n==0)
break;
    for(i=1;i<=n;i++)
      {
      scanf("%d",&x[i]);
      }
      m=0;
    for(i=0;i<120;i++)
    for(j=1;j<=n;j++)
      {
      if(x[j]==i && m<=n-1)
        {
         printf("%d ",i);
         m++;
        }
      }
     
    }
}

UVA Solution for 10940

//10940
#include<stdio.h>
#include<math.h>
int main()
{
    long int input,p,i,x;
    while(scanf("%ld",&input)==1)
    {
    if(input==0)
    break;
    for(i=0;i<=19;i++)
       {
       p=pow(2,i);
       if(p>=input)
       break;
       }
     x=p-(p-input)*2;
     printf("%d\n",x); 
    }
}

UVA Solution for 11461

//11461
#include<stdio.h>
#include<math.h>
int main()
{
    long k,i,x,n1,n2,num1,num2;
    while(scanf("%ld%ld",&n1,&n2)==2)
    {
    if(n1==0 && n2==0)
    break;
    else
      {
          if(n1>n2)
          {
               int temp=n1;
               n1=n2;
               n2=temp;
          }
         
          num1=sqrt(n1);
          num2=sqrt(n2);
          k=0;
          for(i=num1;i<=num2;i++)
          {
          x=pow(i,2);
          if(x>=n1 && x<=n2)
          k++;
          else if(x>n2)
          break;
          }
      }
   
    printf("%ld\n",k);
    }
   
}

UVA Solution for 11000

//11000
#include<stdio.h>
#include<string.h>
int main()
{
    long int n,a,b,srs[1000],c;
    //a=male-1
    //c=total-1
    while(scanf("%ld",&n)==1)
    {
    if(n==-1)
    break;
    a=srs[0]=1;
    b=srs[1]=2;
    for(int i=2;i<=n+1;i++)
      {
            srs[i]=c=a+b;
            a=b;
            b=c;
      }
      printf("%ld %ld\n",srs[n]-1,srs[n+1]-1);
    }
}

UVA Solution for 10929

//10929
#include<stdio.h>
#include<string.h>
int main()
    {
    char num[1002];
    int n,i,k,len,r;
    while(gets(num))
       {
          len=strlen(num);
          if(len==1 && num[0]=='0')
          break;
          r=0;
          k=0;
          n=0;
          for(i=0;i<len;i++)
          {
             r=(n*10)+(num[i]-48);
             n=r%11;
             if(n==0 && i==len-1)
             k++;
          }
          if(k>0)
          printf("%s is a multiple of 11.\n",num);
          else
          printf("%s is not a multiple of 11.\n",num);
       }
    }                 

UVA Solution for 10921

//10921
#include<stdio.h>
int main(){
char ch;

while(scanf("%c",&ch)==1)
{
if (ch=='A'||ch=='B'||ch=='C') printf("2");
else if (ch=='D'||ch=='E'||ch=='F') printf("3");
else if (ch=='G'||ch=='H'||ch=='I') printf("4");
else if (ch=='J'||ch=='K'||ch=='L') printf("5");
else if (ch=='M'||ch=='N'||ch=='O') printf("6");
else if (ch=='P'||ch=='Q'||ch=='R'||ch=='S') printf("7");
else if (ch=='T'||ch=='U'||ch=='V') printf("8");
else if (ch=='W'||ch=='X'||ch=='Y'||ch=='Z') printf("9");
else printf("%c",ch);
}
return 0;
}

UVA Solution for 10784

//10784
#include<stdio.h>
#include<math.h>
int main()
{
long n,kase=1,x;
while(scanf("%ld",&n)==1)
{
if(n==0)
break;
//x=ceil(3+sqrt(9+8*n)/2);
x=ceil((3+sqrt(9+8*n))/2);

printf("Case %ld: %ld\n",kase,x);
kase++;
}
}

UVA Solution for 10783

//10783
#include<stdio.h>

int main()
{
    int j,i,sum,t,a,b;
   
    while(scanf("%d",&t)==1)
    {
for(i=1;i<=t;i++){
scanf("%d%d",&a,&b);

   
    if(b<a)
    {
 int temp=a;
a=b;
b=temp;
}
    sum=0;
   
    for(j=a;j<=b;j++)
    {
  if((j%2)==1)
    sum+=j;  
            
}
      printf("Case %d: %d\n",i,sum);
                
      }
}
return 0; 
}

UVA Solution for 10696

//10696
#include<stdio.h>
int main()
{
    long int n,res,rs;
    while(scanf("%ld",&n)==1)
    {
    if(n==0)
    break;
    else if (n>=101)
    {
         res=n-10;
   
    printf("f91(%ld) = %ld\n",n,res);
             }     
            
             else if(n<=100)
            
             {
                 
               printf("f91(%ld) = 91\n",n);
              }
                       }
}

UVA Solution for 10633

//10633

#include<stdio.h>
int main()
{
    unsigned long int n,x;
    while(scanf("%ld",&n)==1)
    {
    if(n==0)
    break;
    x=(n*10)/9;
    if(n%9==0)
    printf("%ld %ld\n",x-1,x);
    else
   printf("%ld\n",x);
                            }
}

UVA Solution for 10499

//10499
#include<stdio.h>

int main()
{
long int n,r;
while(scanf("%ld",&n)==1)
{
if(n<0) break;
if (n==1) r=0;
else r=n*25;
printf("%ld%\n",r);
}
return 0;
}

UVA Solution for 10432

//10432

#include<math.h>
#include<stdio.h>
int main()
{
    double r,b,n,area;
    while(scanf("%lf%lf",&r,&n)==2)
    {
    b=sin((2*3.14159265358979)/n);//pi
    area=(r*r*n*b)/2;
    printf("%.3lf\n",area);
    }
}

UVA Solution for 10424

//10424
#include<string.h>
#include<stdio.h>

int sum(int n)
{
    int sum=0;
    while(n>0)
    {
    sum=sum+n%10;
    n=n/10;
    }
    return sum;
}

int main()
{
   char name1[26],name2[26];
   int i,j,k,sum1,sum2,len1,len2;
   float ratio=0;
   while(gets(name1))
   {
   gets(name2);
  
    sum1=0,sum2=0;
    len1=strlen(name1);
    len2=strlen(name2);
    for(i=0;i<len1;i++)
      {
      if( (name1[i]>='a') &&(name1[i]<='z') )
      sum1=sum1+(name1[i]-96);
      else if ( (name1[i]>='A') &&(name1[i]<='Z') )
      sum1=sum1+(name1[i]-64);
      }
   //
 // printf("sum1 is %d",sum1); 
    for(i=0;i<len2;i++)
      {
      if( (name2[i]>='a') &&(name2[i]<='z') )
      sum2=sum2+(name2[i]-96);
      else if ( (name2[i]>='A') &&(name2[i]<='Z') )
      sum2=sum2+(name2[i]-64);
      }
  //   printf("\nsum2 is %d\n",sum2);  
     
      i=0;
   while(sum1>9)
    {
    sum1=sum(sum1);
    }
    //
  // printf("sum00001 is %d",sum1); 
  
  
        i=0;
   while(sum2>9)
    {
    sum2=sum(sum2);
    }
    //
  // printf("\nsum00002 is %d",sum2); 
   ratio=((float)sum1/sum2)*100;
  
   if(ratio<=100)
    printf("%.2f %c\n",ratio,'%');
    
    else if (ratio>100)
    {
         ratio=((float)sum2/sum1)*100;
         printf("%.2f %c\n",ratio,'%');
     }        
   }
}

UVA Solution for 10347

//10347
#include<stdio.h>
#include<math.h>
int main()
{
    double a,b,c,max,result,area;
     while(scanf("%lf%lf%lf",&a,&b,&c)==3)
    {
    max=0;
    if(a>max)
    max=a;
    if(b>max)
    max=b;
    if(c>max)
    max=c;
   
    if(a==0||b==0||c==0)
    printf("-1.000\n");
   
   else if((a+b+c-max)<=max)
    printf("-1.000\n");
   
    else
    {
     result=(2*(a*a*b*b+b*b*c*c+c*c*a*a))-(pow(a,4)+pow(b,4)+pow(c,4));
     area=(sqrt(result))/3;
     printf("%.3lf\n",area);  
    }   
   
   
    }
}

UVA Solution for 10346

//10346
#include<stdio.h>
int main()
{
    int x,n,sum,k;
    while(scanf("%d%d",&n,&k)==2)
    {
    x=sum=n;
    while(x>=k)
               {
               sum=sum+(x/k);
               x=x/k+x%k;
               }
    printf("%d\n",sum);
    }
}

UVA Solution for 10302

//10302

#include <stdio.h>
#include <math.h>
int main()
{            long n,xx;
                 while(scanf("%ld",&n)==1)
                 {
                 xx=(n*n*(n+1)*(n+1))/4;
                printf("%ld\n",xx);
                 }
}

UVA Solution for 10300

//10300
#include <stdio.h>
int main()
{
    long int kase,farmer,a,b,c,prem,i,j;
   
    while(scanf("%ld",&kase)==1)
      {
      for(i=1;i<=kase;i++)
              {
              prem=0;
              scanf("%ld",&farmer);
              {
              for(j=1;j<=farmer;j++)
                 {
                 scanf("%ld%ld%ld",&a,&b,&c);
                 prem=prem+a*c;
                 }
                  printf("%ld\n",prem); 
                  }
                  }
                  }     
  return 0;
}