Cod sursa(job #180082)

Utilizator DorinOltean Dorin Dorin Data 16 aprilie 2008 17:05:12
Problema Pavare2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
# include <stdio.h>

# define input "pavare2.in"
# define output "pavare2.out"

# define max 101
inline int maxim (int e,int f)  { return (e>f?e:f); }

long long a[max],b[max];
int n,i,x,y,k,j;

int main()
{
    freopen(input,"r",stdin);
    freopen(output,"w", stdout);
    
    scanf("%d %d %d",&n,&x,&y);
    a[0] = b[0] = 1;
    for(i = 1; i<= n; i++)
    {
          for(j = maxim(0,i-x);j < i; j++)
                a[i]+=b[j];
          for(j = maxim(0,i-y);j < i; j++)
                b[i]+=a[j];
    }
    
    printf("%lld\n",a[n] + b[n]);
    for(i = 1;i<=n;i++)
    {
          j = 0;
          while(i <= n && j < x)printf("0"),i++,j++;
          if(i <= n)
          printf("1");
    }
    
    return 0;
}