Pagini recente » Cod sursa (job #2269125) | Cod sursa (job #1140248) | Cod sursa (job #752919) | Cod sursa (job #2668148) | Cod sursa (job #536709)
Cod sursa(job #536709)
#include <cstdio>
#include <vector>
#include <conio.h>
using namespace std;
int main()
{
freopen ("fractii.in", r, stdin);
freopen ("fractii.out", w, stdout);
int n, aux1,aux2=1,aux3=2,aux4,aux5=1,anz=1;
vector <int> zahlen;
scanf ("%d", &n);
aux1=n;
n=2;
for (int i=1;i<=aux1;i++)
{
aux2*=2;
n+=aux2*2;
}
zahlen.resize (n+1);
zahlen[0]=0;
zahlen[1]=1;
zahlen[2]=1;
aux2=1;
for (int i=1;i<aux1;i++)
{
aux2*=2;
aux4=aux3+1;
aux3+=aux2*2;
for (int j=aux4;j<=aux3;j+=4)
{
zahlen[j]=zahlen[aux5];
zahlen[j+1]=zahlen[aux5]+zahlen[aux5+1];
zahlen[j+2]=zahlen[aux5]+zahlen[aux5+1];
zahlen[j+3]=zahlen[aux5+1];
aux5+=2;
if (zahlen[j]<=aux1 && zahlen[j+1]<=aux1)
anz++;
if (zahlen[j+2]<=aux1 && zahlen[j+3]<=aux1)
anz++;
}
}
printf ("%d \n", anz);
getch();
}