#include #include #define MIN(a,b) ((a)<(b)?(a):(b)) void run(void){ int h,a,d; scanf("%d%d%d",&h,&a,&d); if(d<=a){ printf("%d\n",(h+a-1)/a); return; } double *e=(double *)malloc(sizeof(double)*(h+1)); e[0]=0; int i; for(i=1;i<=a;i++){ e[i]=1; } for(i=a+1;i<=d;i++){ e[i]=MIN(1+e[i-a],1.5); } for(i=d+1;i<=h;i++){ e[i]=MIN(1+e[i-a],1.5+e[i-d]); } printf("%.2lf\n",e[h]); free(e); return; } int main(void){ run(); return 0; }