Pagini recente » Cod sursa (job #100040) | Cod sursa (job #1130339) | Cod sursa (job #2331829) | Cod sursa (job #1358069) | Cod sursa (job #464729)
Cod sursa(job #464729)
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>
#include <vector>
using namespace std;
#define file_in "pavare2.in"
#define file_out "pavare2.out"
#define nmax 111
#define ll long long
int n,a,b,k;
ll v1[nmax];
ll v2[nmax];
void citire()
{
//freopen(file_in,"r",stdin);
//freopen(file_out,"w",stdout);
scanf("%d %d %d %d", &n, &a, &b, &k);
}
inline int max(int a, int b) { return a>b?a:b; }
void solve()
{
int i,j;
v1[0]=1;
v2[0]=1;
for (i=1;i<=n;++i)
{
for (j=max(0,i-a);j<i;++j)
v1[i]+=v2[j];
for (j=max(0,i-b);j<i;++j)
v2[i]+=v1[j];
}
printf("%lld\n", v1[n]+v2[n]);
//pentru k=1
i=1;
while(i<=n)
{
j=1;
while(j<=a && i<=n)
{
printf("0");
j++;
i++;
}
i++;
if (i<=n)
printf("1");
//i++;
}
}
int main()
{
citire();
solve();
fclose(stdin);
fclose(stdout);
return 0;
}