#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; const ll mod = 1000000007; #define rep(i,n) for(int i=0;i=0;i--) #define all(x) (x).begin(),(x).end() bool cond(ll x, ll A, ll B, ll C) { //A年経過したときにもらえるお小遣い = (A年目にもらえるB円) + (それまでのA-1年間にもらえる1円) ll unit = B + (A - 1); ll gain = unit * (x / A) + (x % A); return gain >= C; } int main() { ll A, B, C = 0; cin >> A >> B >> C; ll ub = 1000000000000000001; ll lb = -1; while (ub - lb > 1) { ll mid = (ub + lb) / 2; if(cond(mid, A, B, C)) { ub = mid; } else { lb = mid; } } cout << ub << endl; return 0; }