Social Icons

Thursday, November 26, 2015

Solve of UVA 11371: Number Theory for Newbies

Solve of UVA 11371: Number Theory for Newbies


#include<bits/stdc++.h>
using namespace std;
bool cmp(int a,int b)
{
    return a>b;
}
int main()
{
    long int n,i,j,k;
    while(scanf("%ld",&n)==1)
    {
        vector<int>v;
        k=n;
        while(k)
        {
            v.push_back(k%10);
            k/=10;
        }
        sort(v.begin(),v.end(),cmp);
        k=0;
        for(i=0;i<v.size();i++)
        {
            k=k*10+v[i];
        }
        sort(v.begin(),v.end());
        n=0;
        for(i=0;i<v.size();i++)
        {
            if(v[i]!=0)
            {
                n=v[i];
                j=i;
                for(i=0;i<v.size();i++)
                {
                    if(j!=i)
                    {
                        n=n*10+v[i];
                    }
                }
            }
        }

        printf("%ld - %ld = %ld = 9 * %ld\n",k,n,k-n,(k-n)/9);

    }
    return 0;
}

No comments:

Post a Comment

 

Sample text

Sample Text

 
Blogger Templates