大水题

#include<cstdio>
using namespace std;
double w[100002];
int main()
{
  for(int i=1;;i++)
    {
      w[i]=w[i-1]+1.0/(i+1);
      if(w[i]>5.2) break;
    }
  double x;
  while(~scanf("%lf",&x))
    {
      if(x<0.01) break;
      for(int i=1;;i++)
    if(w[i]>x)
      {
        printf("%d card(s)\n",i);
        break;
      }
    }
  return 0;
}