Pagini recente » Cod sursa (job #2481063) | Cod sursa (job #2834175) | Cod sursa (job #2906099) | Cod sursa (job #1999581) | Cod sursa (job #2212150)
#include <fstream>
#include <deque>
using namespace std;
ifstream fin ("date.in");
ofstream fout("date.out");
long long d[32],k;
int i,n,j;
void R(int n, long long k, int ok)
{
int nod=1;long long s=d[nod-1]*d[n-nod];
nod++;
while(s+d[nod-1]*d[n-nod]<=k&&nod<=n)
nod++;
nod--;
fout<<nod<<" "<<d[nod-1]<<" "<<d[n-nod]<<" "<<k<<" ";
fout<<nod+ok<<"\n";
if(k==0)
return;
if(nod-1>0)
R(nod-1, k/d[n-nod], ok);
if(n-nod>0)
R(n-nod, k%d[n-nod], ok+nod);
}
int main(){
fin>>n>>k;d[0]=1;
for(i=1;i<=n;i++) for(j=1;j<=i;j++) d[i]+=d[j-1]*d[i-j];
for(i=1;i<=n;i++)
fout<<d[i]<<" ";
fout<<"\n";
R(n,k,0);
return 0;
}
//euro 2 + interclasare