#include <stdio.h>
int find_index(int target, int ps[], int ptrs[], int n){
int cur=ps[ptrs[n]]-ps[0];
while(cur<target){
ptrs[n]++;
cur=ps[ptrs[n]]-ps[0];
}
return ptrs[n];
}
int find_window(int d, int min, int ps[], int ptrs[]){
int cur=ps[ptrs[d]+d-1]-ps[ptrs[d]-1];
while(cur<=min){
ptrs[d]++;
cur=ps[ptrs[d]+d-1]-ps[ptrs[d]-1];
}
return ptrs[d];
}
int main(void){
int a1, a2, n, i;
int args
= scanf("%d %d %d",&a1
, &a2
, &n
); if (args != 3)
printf("Failed to read input.\n");
int a[n];
a[0]=a1;
a[1]=a2;
int ps[n+1];
ps[0]=0;
ps[1]=a[0];
ps[2]=a[0]+a[1];
for (i=3; i<n+1; i++)
ps[i] = 1000000;
int ptrs[n+1];
for(i=0;i<n+1;i++)
ptrs[i]=1;
for(i=2;i<n;i++){
int target=a[i-1]+1;
int max_len=find_index(target,ps, ptrs, n);
int cur=ps[max_len]-ps[0];
int best=cur;
for(int d=max_len-1;d>1;d--){
int l=find_window(d, a[i-1], ps, ptrs);
int cur=ps[l+d-1]-ps[l-1];
if(cur==target){
best=cur;
break;
}
if(cur>a[i-1]&&cur<best)
best=cur;
}
a[i]=best;
ps[i+1]=a[i]+ps[i];
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgZmluZF9pbmRleChpbnQgdGFyZ2V0LCBpbnQgcHNbXSwgaW50IHB0cnNbXSwgaW50IG4pewogIGludCBjdXI9cHNbcHRyc1tuXV0tcHNbMF07CiAgd2hpbGUoY3VyPHRhcmdldCl7CiAgICBwdHJzW25dKys7CiAgICBjdXI9cHNbcHRyc1tuXV0tcHNbMF07CiAgfQogIHJldHVybiBwdHJzW25dOwp9CgppbnQgZmluZF93aW5kb3coaW50IGQsIGludCBtaW4sIGludCBwc1tdLCBpbnQgcHRyc1tdKXsKICBpbnQgY3VyPXBzW3B0cnNbZF0rZC0xXS1wc1twdHJzW2RdLTFdOwogIHdoaWxlKGN1cjw9bWluKXsKICAgIHB0cnNbZF0rKzsKICAgIGN1cj1wc1twdHJzW2RdK2QtMV0tcHNbcHRyc1tkXS0xXTsKICB9CiAgcmV0dXJuIHB0cnNbZF07Cn0KCmludCBtYWluKHZvaWQpewogIGludCBhMSwgYTIsIG4sIGk7CiAgaW50IGFyZ3MgPSBzY2FuZigiJWQgJWQgJWQiLCZhMSwgJmEyLCAmbik7CiAgaWYgKGFyZ3MgIT0gMykKICAgIHByaW50ZigiRmFpbGVkIHRvIHJlYWQgaW5wdXQuXG4iKTsKCiAgaW50IGFbbl07CiAgYVswXT1hMTsKICBhWzFdPWEyOwoKICBpbnQgcHNbbisxXTsKICBwc1swXT0wOwogIHBzWzFdPWFbMF07CiAgcHNbMl09YVswXSthWzFdOwogIGZvciAoaT0zOyBpPG4rMTsgaSsrKQogICAgcHNbaV0gPSAxMDAwMDAwOwoKICBpbnQgcHRyc1tuKzFdOwpmb3IoaT0wO2k8bisxO2krKykKICAgIHB0cnNbaV09MTsKCiAgZm9yKGk9MjtpPG47aSsrKXsKICAgIGludCB0YXJnZXQ9YVtpLTFdKzE7CiAgICBpbnQgbWF4X2xlbj1maW5kX2luZGV4KHRhcmdldCxwcywgcHRycywgbik7CiAgICBpbnQgY3VyPXBzW21heF9sZW5dLXBzWzBdOwogICAgaW50IGJlc3Q9Y3VyOwoKICAgIGZvcihpbnQgZD1tYXhfbGVuLTE7ZD4xO2QtLSl7CiAgICAgIGludCBsPWZpbmRfd2luZG93KGQsIGFbaS0xXSwgcHMsIHB0cnMpOwogICAgICBpbnQgY3VyPXBzW2wrZC0xXS1wc1tsLTFdOwoKICAgICAgaWYoY3VyPT10YXJnZXQpewogICAgICAgIGJlc3Q9Y3VyOwogICAgICAgIGJyZWFrOwogICAgICB9CgogICAgICBpZihjdXI+YVtpLTFdJiZjdXI8YmVzdCkKICAgICAgICBiZXN0PWN1cjsKICAgIH0KICAgIGFbaV09YmVzdDsKICAgIHBzW2krMV09YVtpXStwc1tpXTsKICB9CgogIHByaW50ZigiJWQiLGFbbi0xXSk7Cn0KCg==