1 #include <cstdio>
2 #include <iostream>
3 #define ll long long
4 #define N 10010
5 using namespace std;
6 ll n,m,k,w,f[N],g[N];
7 int main()
8 {
9 scanf("%lld%lld%lld",&n,&m,&k),f[0]=g[0]=1;
10 if (m==1) { printf("0"); return 0;}
11 for (int i=1;i<=n;i++)
12 {
13 f[i]=min(k-g[i-1],g[i-1]-((i>=m)?f[i-m]:0)),g[i]=g[i-1]+f[i]-((i>=m)?f[i-m]:0);
14 if (f[i]+g[i-1]==k) { w=i; break; }
15 }
16 if (w==n||!w) printf("%lld",g[n]);
17 else
18 {
19 if ((n%=m+1)<=w) n+=m+1;
20 if (n-m>=0) printf("%lld",k-f[n-m]); else printf("%lld",k);
21 }
22 }