Uva 12136 Solution

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int w, i, j, k, l, o, n, m, x, y;
    char a[10], b[10], c[10], d[10];
    while(cin >> w)
    {
        for(i=1; i<=w; i++)
        {
            cin >> a >> b >> c >> d;
            n = ((a[0]-48)*10 + (a[1]-48))*60 + ((a[3]-48)*10 + (a[4]-48));
            j =  ((a[0]-48)*10 + (a[1]-48));
            k = ((b[0]-48)*10 + (b[1]-48));
            l = ((a[3]-48)*10 + (a[4]-48));
            o = ((b[3]-48)*10 + (b[4]-48));
            if(j>k ||(j == k && l > o))
            {
                if(l>o)
                {
                    m = (24 - (j-k)-1) * 60 + o;
                }
                else
                    m = (24 - (j-k)) * 60 + o;
            }
            else
            {
                m = ((b[0]-48)*10 + (b[1]-48))*60 + ((b[3]-48)*10 + (b[4]-48));
            }

            x = ((c[0]-48)*10 + (c[1]-48))*60 + ((c[3]-48)*10 + (c[4]-48));

            j = k = l = o = 0;

            j = ((c[0]-48)*10 + (c[1]-48));
            k = ((d[0]-48)*10 + (d[1]-48));
            l = ((c[3]-48)*10 + (c[4]-48));
            o = ((d[3]-48)*10 + (d[4]-48));
            if(j>k || (j == k && l > o))
            {
                if(l>o)
                {
                    y = (24 - (j-k)-1) * 60 + o;
                }
                else
                    y = (24 - (j-k)) * 60 + o;
            }
            else
               y = ((d[0]-48)*10 + (d[1]-48))*60 + ((d[3]-48)*10 + (d[4]-48));

            if((n > x && n > y && m > x && m > y) || (n < x && n < y && m < x && m < y))
            {
                cout << "Case " << i << ": Hits Meeting" << endl;
            }
            else
                cout << "Case " << i << ": Mrs Meeting" << endl;

        }
    }

    return 0;
}

Comments