problema

 avatar
unknown
plain_text
4 years ago
648 B
5
Indexable
#include <iostream>
int s=0,nr=0,x[99],v[99],n;
using namespace std;
void tipar(int k)
{
    int i,z=0;
    for(i=1; i<=k; i++)
        z=z*10+x[i];
    s+=z;
}
int validare(int k)
{
    for(int i=1; i<k; i++)
        if(x[k]==x[i])
            return 0;
    return 1;

}
void backtrack(int k)
{
    for(int i=1;i<=nr;i++)
    {
        x[k]=v[i];
        if(validare(k)==1)
            if(k==nr)
            tipar(k);
        else
            backtrack(k+1);
    }
}
int main()
{
    cin>>n;

    while(n)
    {

        v[++nr]=n%10;
        n/=10;
    }
    backtrack(1);
    cout<<s;
    return 0;
}
Editor is loading...