#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; using vi = vector; using vvi = vector; using vl = vector; using vvl = vector; using vb = vector; using vvb = vector; using vd = vector; using vs = vector; using pii = pair; using pll = pair; using pdd = pair; using vpii = vector; using vpll = vector; using vpdd = vector; const int inf = (1 << 30) - 1; const ll INF = 1LL << 60; const int MOD = 1000000007; //const int MOD = 998244353; int main() { int h, a, d; cin >> h >> a >> d; vd dp(h + 1, inf); dp[h] = 0; for (int i = h; i >= 1; i--) { if (dp[i] == inf) continue; int x = max(0, i - a); dp[x] = min(dp[x], dp[i] + 1); x = max(0, i - d); dp[x] = min(dp[x], dp[i] + 1.5); } cout << fixed << setprecision(3); cout << dp[0] << endl; return 0; }