//http://www.spoj.com/problems/M3TILE/
//explaination- http://www.algorithmist.com/index.php/UVa_10918
#include<stdio.h>
int main()
{
int i,n;
int f[31];
int g[31];
f[0]=1,f[1]=0;
g[0]=0,g[1]=1;
for(i=2;i<31;i++)
{
f[i]=f[i-2]+2*g[i-1];
g[i]=f[i-1]+g[i-2];
}
scanf("%d",&n);
while(n!=-1)
{
printf("%d\n",f[n]);
scanf("%d",&n);
}
return 0;
}
why g[0] =0? why can't we take g[0]=1 just as f[0]=1?
ReplyDeletethanks in advance..