Cod sursa(job #1870592)
Utilizator | Data | 6 februarie 2017 19:24:32 | |
---|---|---|---|
Problema | Dirichlet | Scor | 8 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <fstream>
using namespace std;
ifstream f ("dirichlet.in");
ofstream g ("dirichlet.out");
int n,suma,sol;
void dirichlet(int k)
{
for(int i=0;i<=k;++i)
{
if(k==n)
{
if(suma+i==n) {++sol;break;}
}
else
{
if(suma+i<=k)
{
suma=suma+i;
dirichlet(k+1);
suma=suma-i;
}
else break;
}
}
}
int main()
{
f>>n;
dirichlet(1);
g<<sol;
return 0;
}