#include #include #include #include #include using namespace std; int main() { int h, a, d; cin >> h >> a >> d; vector specialCounts(h + 1); specialCounts[0] = 0; for (int i = 1; i <= h; ++i) { specialCounts[i] = 0; if (i >= d) { specialCounts[i] += specialCounts[i - d]; } specialCounts[i] += 3. / 2.; } double minTotalCount = numeric_limits::max(); for (int normalCount = 0; normalCount <= (h + a - 1) / a; ++normalCount) { int remaining = max(0, h - a * normalCount); double totalCount = (double)normalCount + specialCounts[remaining]; minTotalCount = min(minTotalCount, totalCount); } cout << fixed << setprecision(4) << minTotalCount << endl; return 0; }