Cod sursa(job #604619)
| Utilizator | Data | 23 iulie 2011 18:54:28 | |
|---|---|---|---|
| Problema | Ratphu | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <fstream>
using namespace std;
const int N=20;
int p,nr;
char s[N];
bool use[N];
ifstream in("ratphu.in");
ofstream out("ratphu.out");
void bkt(int p,int val)
{
if (!s[p])
{
nr+=!val;
return;
}
for (int i=0;s[i];i++)
if (!use[i])
{
use[i]=true;
bkt(p+1,(val*10+s[i]-'0')%p);
use[i]=false;
}
}
int main()
{
in>>s>>p;
bkt(1,0);
out<<nr<<"\n";
return 0;
}
