水,直接爆,加个long long安心点
#include <map>
#include <set>
#include <list>
#include <queue>
#include <deque>
#include <stack>
#include <string>
#include <time.h>
#include <cstdio>
#include <math.h>
#include <iomanip>
#include <cstdlib>
#include <limits.h>
#include <string.h>
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
#define LL long long
#define MIN INT_MIN
#define MAX INT_MAX
#define pii pair<int ,int>
#define mp make_pair
#define bug cout<<"here!!"<<endl
#define PI acos(-1.0)
#define FRE freopen("input.txt","r",stdin)
#define FF freopen("output.txt","w",stdout)
#define N 5005
int main(){
int n,a,b;
while(scanf("%d%d%d",&n,&a,&b) != EOF) {
LL cnt = 0;
while(1) {
if(n<a) {
if(a-n<=b) {
cnt+=b;
n=b-(a-n);
}
else break;
} else {
cnt+=n/a*b;
LL tmp=n/a*b;
n%=a;
n+=tmp;
}
}
printf("%lld\n",cnt);
}
return 0;
}