Monday, September 15, 2014

UVa Solution No:2 11219 - How old are you?

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

int main()
{
    string s1, s2;
    int i, j, t, test, age;
    int d1, d2, m1, m2, y1, y2;

    cin >> test;
    for(t=1; t<=test; t++)
    {
        cin >> s1;
        cin >> s2;
        for(i=0; s1[i]!='\0'; i++)
        {
            if(i==0)
            {
                d1=s1[i]-48;
                d1=d1*10;
            }
            if(i==1)
            {
                d1= d1+(s1[i]-48);
            }
            if(i==3)
            {
                m1=s1[i]-48;
                m1=m1*10;
            }
            if(i==4)
            {
                m1= m1+(s1[i]-48);
            }
            if(i>=6 || i>=9)
            {
                if(i==6)
                {
                    y1 = s1[i]-48;
                }
                if(i==9)
                {
                    break;
                }
                y1 = y1*10;
                y1 = y1+(s1[i+1]-48);
            }
        }
        for(j=0; s2[j]!='\0'; j++)
        {
            if(j==0)
            {
                d2=s2[j]-48;
                d2=d2*10;
            }
            if(j==1)
            {
                d2=d2+(s2[j]-48);
            }
            if(j==3)
            {
                m2=s2[j]-48;
                m2=m2*10;
            }
            if(j==4)
            {
                m2=m2+(s2[j]-48);
            }

            if(j>=6 || j>=9)
            {
                if(j==6)
                {
                    y2 = s2[j]-48;
                }
                if(j==9)
                {
                    break;
                }
                y2 = y2*10;
                y2 = y2+(s2[j+1]-48);
            }
        }
        age=y1-y2;
        if(m1==m2)
        {
            if(d1<d2)
            {
                age=age-1;
            }
        }
        if(m1<m2)
        {
            age=age-1;
        }

        if(age<0)
        {
            printf("Case #%d: Invalid birth date\n", t);
        }
        else if(age>130)
        {
            printf("Case #%d: Check birth date\n", t);
        }
        else
        {
            printf("Case #%d: %d\n", t, age);
        }
    }
    return 0;
}


No comments:

Post a Comment

Compare equality of two string in C

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