#include <iostream>
#include <fstream>
#include <typeinfo>
#include <vector>
#include <cmath>
#include <set>
#include <map>
#include <string>
#include <algorithm>
#include <cstdio>
#include <queue>
#include <iomanip>
#include <cctype>
#define syosu(x) fixed<<setprecision(x)
using namespace std;
typedef long long ll;
typedef pair<int,int> P;
typedef pair<double,double> pdd;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<char> vc;
typedef vector<vc> vvc;
typedef vector<bool> vb;
typedef vector<vb> vvb;
typedef vector<P> vp;
typedef vector<vp> vvp;
typedef pair<int,P> pip;
typedef vector<pip> vip;
const int inf=1<<25;
const double pi=acos(-1);
const double eps=1e-8;
const vi emp;

typedef pair<int,double> T;

int n;

int main(){
	while(1){
		cin>>n;
		if(!n) break;
		T ans(-1,inf);
		int num,w;
		double h;
		for(int i=0;i<n;i++){
			cin>>num>>h>>w;
			h/=100;
			double Sa=fabs(w/(h*h)-22);
			if(fabs(ans.second-Sa)<eps){
				if(ans.first>num) ans=T(num,Sa);
			}
			else if(ans.second>Sa) ans=T(num,Sa);
		}
		cout<<ans.first<<endl;
	}
}