Go: package main

import "fmt"

func main() {
	var v float64
	for {
		i, _ := fmt.Scan(&v)
		if i == 0 {
			break
		}
		t := v / 9.8
		y := 4.9 * t * t

		N := 0
		for {
			N++
			if height := 5*N - 5; float64(height) > y {
				fmt.Println(N)
				break
			}
		}
	}
}

C++: #include<iostream>
#include<cmath>

double dp[1000] = { 0 };

int height(double v) {
	for (int i = 2; i < 1000; i++) {
		if (dp[i] == 0) {
			double t = std::sqrt((5 * i - 5) / 4.9);
			dp[i] = 9.8 * t;
		}
		if (dp[i] >= v) return i;
	}
	return 0;
}

int main() {
	double v;
	while (std::cin >> v) {
		std::cout << height(v) << std::endl;
	}
	return 0;
}

C++: #include<iostream>
#include<string>
#include<algorithm>
#include<vector>
#include<queue>
#include<map>
#include<math.h>
#include<iomanip>
#include<set>
#include<numeric>
#include<cstring>
#include<cstdio>
#include<functional>
#include<bitset>
#include<limits.h>
#include<cassert>
#include<iterator>
#include<complex>
#include<stack>
#include<sstream>
#include<iterator>
#include<list>

using namespace std;

typedef  long long int lint;

#define rep(i, n) for (lint i = 0; i < n; i++)
#define sort(v) sort((v).begin(), (v).end())
#define reverse(v) reverse((v).begin(), (v).end())
#define upper(v,hoge) upper_bound(v.begin(),v.end(),hoge)
#define lower(v,hoge) lower_bound(v.begin(),v.end(),hoge)
#define mp make_pair
#define IP pair<int,int>
#define enld endl

int main() {
	double V;
	double g = 9.8;
	while (cin >> V) {
		double a = (V * V / g / 2 + 5)/5;
		cout << int(a) + bool(a - int(a)) << enld;
	}
}

C++: #include<iostream>
#include<cmath>
using namespace std;
int main(){
  double height;

  while(cin >> height){
      double N,t;
    for(int i=1;;i++){
      N = 5*i - 5;
      t = sqrt(N/4.9);
      if(height <= 9.8*t){
	cout << i << endl;
	break;
      }
    }
  }
}

C++: #include<bits/stdc++.h>
using namespace std;

int main(){
    double v;
    while(scanf("%lf",&v) != EOF){
        int n = 1;
        while(5*n-5 < v*v/19.6)n++;
        cout << n << endl;
    }

    return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int main(){
	int i;
	double v,y,src;
	while(cin >> v){
		y=4.9*(v/9.8)*(v/9.8);
		cout << ceil(y/5)+1 << endl;
	}
}

C++: #include<iostream>

using namespace std;

int main()
{
	int i;
	double n,v,y;
	
	for(;cin >> n;)
	{
		v=n/9.8;
		y=4.9*v*v;
		for(i=1;5*(i-1)<y;i++)
		{}
		cout << i << endl;
	}
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int main() {
  double v;
  while (cin >> v) {
    cout << floor(v*v/98 + 2) << endl;
  }
  return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int main() {
    double minSpeed;
    while (cin >> minSpeed) {
        for (int i = 1; ; i++) {
            int y = 5 * i - 5;
            double t = sqrt(y / 4.9);
            double v = 9.8 * t;
            if (v >= minSpeed) {
                cout << i << endl;
                break;
            }
        }
    }
}

C++: #include<iostream>
#include<cmath>
using namespace std;

double speed(double v) {
	double time = v / 9.8;
	double y = 4.9*time*time;
	double f =(y+5)/5 ;
	double fa = ceil(f);
	return fa;
}

int main() {
	double x;
	while (cin >> x) {
		cout << speed(x) << endl;
	}
	return 0;
}

C++: #include <math.h>
#include <iostream>
using namespace std;
int main()
{
	double t, v, h, f;
	while (cin >> v) {
		t = v / 9.8;
		h = 4.9 * t * t;
		f = ceil(h / 5 + 1);
		cout << f << endl;
	}
}

C++: #include<iostream>
using namespace std;
int main(){
  double h,t,y;
  int k;
  while(cin>>h){
    t=h/9.8;
    y=4.9*t*t;
    for(k=0;5*k-5<y;k++);
    cout<<k<<endl;
  }
  return 0;
}

C++: #include <iostream>
using namespace std;

#define EPS (1e-10)

int main(){
	double min_v, n;
	int i;
	while(cin >> min_v){
		n = min_v * min_v / 98.0 + 1.0;
		i = 1;
		while(n - (double)i > EPS){
			i++;
		}
		cout << i << endl;
	}
	return 0;
}

C++: 
#include <cstdio>
int main()
{
    float v,h;
    int i=1;
    while(~scanf("%f",&v))
    {
        h=v*v/(9.8*2);
        while(1)
        {
            if((i-1)*5>=h)
            break;
            i++;
        }
        printf("%d\n",i);
    }
    return 0;
}

C++: #include<cstdio>
int main(){
  double v,t,y,ans=0;
  while(scanf("%lf",&v)!=EOF){
    t = v/9.8;
    y = 4.9*t*t;
    while(y > ans) ans += 5;
    printf("%.0lf\n",ans/5+1);
  }
  return(0);
}

C++: #include<iostream>
using namespace std;

int main() {
	double v;
	double t, y;
	int n;
	
	while( cin >> v ){
		t = v / 9.8;
		y = 4.9 * t * t;
		n = (y + 5.0 - 1e-12) / 5 + 1;
		cout << n << endl;
	}
	return 0;
}

C++: #include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int main()
{
	double x;
	while(cin>>x)printf("%.0f\n",ceil((x*x+98)/98));
    return 0;
}

C++: #include<iostream>
#include<cmath>
using namespace std;
int main(){
  double v,n;
  while(cin >>v){
    n = v*v/19.6;
    cout <<ceil(n/5)+1<<endl;
  }
  return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int main(){
	double a,b,t,y;
	int n;
	while(cin >> a){
		t = a / 9.8;
		y = 4.9 * t * t + 5;
		b = y / 5;
		n = ceil(b);
		cout << n << endl;
	}
	return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;


int main()
{
	double s;
	while (cin >> s){
		for (int i = 1;; i++){
			double h = 5 * i - 5;
			double v = sqrt(2 * 9.8 * h);
			if (v >= s){
				cout << i << endl;
				break;
			}
		}
	}
	return 0;
}

C++: // 2014/06/09 Tazoe

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
	while(true){
		double v;
		cin >> v;

		if(cin.eof())
			break;

		int N = ceil((v*v+98.0)/98.0);

		cout << N << endl;
	}

	return 0;
}

C++: #include <cstdio>
#include <iostream>

using namespace std;

int main() {
	float v;
	while (scanf("%f", &v) != EOF) {
		printf ("%d\n", (int)((v * v / 19.6 + 5) / 5.0 + 0.5));
	}
	return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>
using namespace std;

int main() {
    double v;
    while (cin >> v) {
        cout << (int)(v * v * 10 / 980 - 1e-9) + 2 << endl;
    }
    return 0;
}

C++: #include <iostream>
using namespace std;

int main()
{
	double v;
	while(cin>>v){
		double t = v/9.8;
		double y = 4.9*t*t;
		for(int N=1;;N++){
			if(5*N-5>=y) break;
		}
		cout<<N<<endl;
	}
	return 0;
}

C++: #include<iostream>
using namespace std;
int main()
{
long double v,n;
int N;
while(cin>>v)
{
n=0;
N=0;
n=4.9*(v/9.8)*(v/9.8)/5+1;
N=n*10;	
if(N%10==0)
{
	cout<<N/10<<endl;
}
else if(N%10!=0)
{
	cout<<N/10+1<<endl;
}
}
return 0;
}

C++: #include<iostream>
#include<cmath>
using namespace std;

int main(){

	double v;

	while(cin >> v){
		for(int i=1;; i++){
			if(v <= 9.8 * sqrt((5 * i -5) / 4.9)){
				cout << i << endl;
				break;
			}
		}
	}

	return 0;
}

C++: #include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>
using namespace std;
static const double EPS = 1e-5;
typedef long long ll;
#define FOR(i,n) for(i=0;i<n;i++)
#define rep(i,n) for(int i=0;i<n;i++)

int main(){
	double s;
	for(;cin>>s;){
		double t=s/9.8;
		double y=4.9*t*t;
		cout<<(int)(y/5+1.999999999999999)<<endl;
	}
	return 0;
}

C++: #include <iostream>
#include <stdio.h>
using namespace std;
int main(){
  int nr;
  double v,n;
  while(scanf("%lf",&v)!=EOF){
    n=(v*v+98)/98;
    nr=n;
    if(n-nr>0) cout << nr+1 << endl;
    else cout << nr << endl;
  }
  return 0;
}

C++: bool solve(){
	double in;
	while(cin>>in){
		int y = 4.9 * (in/9.8) * (in/9.8);
		int ans = 0;
		for(int i=1;i<10000;i++){
			int h = 5 * (i - 1);
			if(h > y){
				ans = i;
				break;
			}
		}
		cout<< ans<< endl;
	}
	return true;
}