PKU 1563 The Snail

http://poj.org/problem?id=1563
かたつむりの動きをシミュレーションする。

以上とかより大きいとか、整数で扱うとかに注意しながら何とかサンプルをあわせて出しました。

main(){
  int h,u,d,f;
  while(cin>>h>>u>>d>>f,h){
    h*=100;
    u*=100;
    d*=100;
    f*=u/100;
    int ih=0;
    for(int i=0;;++i){
      ih+=u;
      if(ih>h){
        printf("success on day %d\n",i+1);
        break;
      }
      u=max(u-f,0);
      ih-=d;            
      if(ih<0){
        printf("failure on day %d\n",i+1);
        break;
      }

    }
  }
}