Tuesday, September 9, 2014

UVa Solution 438 - The Circumference of the Circle

#include<iostream>
#include<cmath>
#include<cstdio>
using namespace std;
#define PI 3.141592653589793

int main()
{
    double x1, x2, x3, y1, y2, y3;
    double a, b, c, d, s, r, area, cir;
    while(cin>>x1>> y1>>x2>>y2>>x3>>y3)
    {
        a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
        b=sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
        c=sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
        s=(a+b+c)/2;
        area=sqrt(s*(s-a)*(s-b)*(s-c));
        d=(a*b*c)/(2*area);
        r=(d/2);
        cir=(2*PI*r);
        printf("%0.2lf\n", cir);
    }
    return 0;
}

Saturday, September 6, 2014

UVa Solution 10931 - Parity

#include<cstdio>
#include<iostream>
using namespace std;

int main()
{
      int a[105], count;
      int bin ,i , j;
      while(scanf("%d",&bin)==1)
      {
          if(bin==0)
          {
              break;
          }
          i=0;
          while(bin>0)
          {
               a[i]=bin%2;
               i++;
               bin=bin/2;
          }
          count=0;
          cout <<"The parity of ";
          for(j=i-1;j>=0;j--)
          {
                printf("%d",a[j]);
                if(a[j]==1)
                {
                  count=count+1;
                }
          }
          cout << " is " << count << " (mod 2)." << endl;
      }
 }

Thursday, September 4, 2014

UVa Solution 11942 - Lumberjack Sequencing

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;

int main()
{
    int a[105];
    int test, i, n, count, count2, temp;
    printf("Lumberjacks:\n");
    scanf("%d", &test);
    while(test--)
    {
        count=1;
        count2=0;
        temp=0;
        for(i=0; i<10; i++)
        {
            scanf("%d", &n);
            if(temp>n)
            {
                count++;
                temp=n;
            }
            else if(temp<n)
            {
                count2++;
                temp=n;
            }
        }
        if(count==10 || count2==10)
        {
            printf("Ordered\n");
        }
        else
        {
           printf("Unordered\n");
        }
    }
}

UVa Solution 11559 - Event Planning

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;

int main()
{
    int n, b, h, w, p, cost, i, j, temp, a;
    while(scanf("%d%d%d%d", &n, &b, &h, &w)==4)
    {
        cost=b+100;
        for(i=0; i<h; i++)
        {
            scanf("%d", &p);
            temp=0;
            for(j=0; j<w; j++)
            {
                scanf("%d", &a);
                if(a>=n)
                {
                    temp=p*n;
                    if(cost>temp)
                    {
                        cost=temp;
                    }
                }
            }
        }
        if(cost<b)
        {
            printf("%d\n",cost);
        }
        else
        {
            printf("stay home\n");
        }
    }
}

Wednesday, September 3, 2014

UVa Solution 12468 - Zapping

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;

int main()
{
    int a, b, change, change1, change2;
    while(scanf("%d%d", &a, &b)==2)
    {
        if(a==-1 && b==-1)
        {
            break;
        }
        if(a>=b)
        {
            change1=(100-a)+b;
            change2=a-b;
            if(change1>change2)
            {
                change=change2;
            }
            else
            {
                change=change1;
            }
        }
        if(b>a)
        {
            change1=((100-b)+a);
            change2=b-a;
            if(change1>change2)
            {
                change=change2;
            }
            else
            {
                change=change1;
            }
        }
        printf("%d\n", change);
    }
}

Monday, September 1, 2014

UVa Solution 12626 - I ❤ Pizza

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;

int main()
{
    string s;
    int i, test, len, count;
    int countM, countA, countR, countG, countI, countT;
    scanf("%d", &test);
    while(test--)
    {
        cin >> s;
        len=s.length();
        countM = countA = countR = countG = countI = countT =0;
        for(i=0; i<len; i++)
        {
            if(s[i]=='M')
            {
                countM++;
            }
            if(s[i]=='A')
            {
                countA++;
            }
            if(s[i]=='R')
            {
                countR++;
            }
            if(s[i]=='G')
            {
                countG++;
            }
            if(s[i]=='I')
            {
                countI++;
            }
            if(s[i]=='T')
            {
                countT++;
            }
        }
        count=0;
        while(1)
        {
            if(countA>=3 && countR>=2 && countG>=1 && countI>=1 && countT>=1 && countM>=1)
            {
                count=count+1;
                countA=countA-3;
                countR=countR-2;
                countG=countG-1;
                countI=countI-1;
                countT=countT-1;
                countM=countM-1;
            }
            else
            {
                break;
            }
        }
        printf("%d\n", count);
    }
    return 0;
}

UVa Solution 10340 - All in All

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

int main()
{
    string s, t;
    int i, j, len_s, len_t, temp;
    while(cin >> s >> t)
    {
        len_s=s.length();
        len_t=t.length();
        temp=0;
        for(i=0; i<len_s; i++)
        {
            for(j=0; j<len_t; j++)
            {
                if(s[i]==t[j])
                {
                    temp=temp+1;
                    i++;
                }
            }
        }
        if(temp==len_s)
        {
            printf("Yes\n");
        }
        else
        {
            printf("No\n");
        }
    }
    return 0;
}

Compare equality of two string in C

#include <stdio.h> #include<string.h> int main() {     char* country = "Bangladesh";     char* country2;     ...