Thursday, 11 February 2016

UVa 1225 - Digit Counting

#include<bits/stdc++.h>
using namespace std;
int main()
{
    char s[110];
    long long int num[100][100],sum[1000],i=0,l,j,n=0,index,temp,rem,m=999,start;
    for(i=0;i<100;i++)
    {

        for(j=0;j<100;j++)
        {
            num[i][j]=0;
        }
    }
    for(i=0;i<1000;i++)
        sum[i]=0;
    while(1)
    {
        scanf("%s",s);
        if(s[0]=='0')
            break;
        else
        {
            l=strlen(s);


            for(j=99;j>=0;j--)
            {
                if(l>0)
                {
                    num[n][j]=s[l-1]-48;
                }
                l--;
            }
            n++;

        }
    }
    temp=0;
    rem=0;
    for(i=99;i>=0;i--)
    {

        for(j=99;j>=0;j--)
        {
            temp=temp+num[j][i];

        }
        temp=temp+rem;
        sum[m]=temp%10;
        temp=temp/10;
        m=m-1;
    }
    for(i=0;i<1000;i++)
    {
        if(sum[i]!=0)
        {
            start=i;
            break;
        }
    }
    for(i=start;i<1000;i++)
        cout<<sum[i];
    cout<<endl;
    return 0;
}

No comments:

Post a Comment