Cod sursa(job #655989)
Utilizator | Data | 3 ianuarie 2012 18:27:13 | |
---|---|---|---|
Problema | Ratphu | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("ratphu.in");
ofstream g("ratphu.out");
long long n1,nr,rez,p,v[40],n,i,poz[30];
int main()
{
f>>n>>p;
while (n!=0)
{
n1++;
v[n1]=n%10;
n=n/10;
}
for(i=1;i<=n1;i++)
poz[i]=i;
do
{
nr=0;
for(i=1;i<=n1;i++) nr=nr*10+v[poz[i]];
if (nr%p==0) rez++;
}while (next_permutation(poz+1,poz+n1+1));
g<<rez;
f.close();
g.close();
return 0;
}