#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define ll long long int #define LL unsigned long long #define pb push_back #define rep(i,n) for(int i=0;i<(n);i++) #define REP(i,n) for(int i=1;i<=(n);i++) using namespace std; int mx8[] = {0,0,1,-1,-1,1,-1,1}; int my8[] = {-1,1,0,0,-1,-1,1,1}; int mx4[] = {1,-1,0,0}; int my4[] = {0,0,-1,1}; const int MOD = 1000000007; int main(){ ll v, t, p; cin >> v >> t >> p; if(v>=t) { ll f = (v + p * v + 1 / t) / (t - 1); ll l = v - f * t + f + 1 / t + p * v; cout << f * t + 1 + l << endl; }else{ cout << v + 1 << endl; } //cout << l << endl; }