Problem:
理想の体型

肥満度を表す指数としてBMI（Body Mass Index）があります。BMIの値は以下の式で計算します。

BMI = 体重(kg) / (身長(m))2

BMIの値が標準値に近いほど「理想の体型」と考えられます。そこで、BMIの標準値を 22 とした場合、対象者の情報を入力とし、最も「理想の体型」に近い人の情報を出力するプログラムを作成してください。

対象者の数を n とすると、各対象者には重複のないように1 以上 n 以下の整数値の受付番号 p が振られています。

Input

複数のデータセットの並びが入力として与えられます。入力の終わりはゼロひとつの行で示されます。各データセットは以下の形式で与えられます。

n
p1 h1 w1
p2 h2 w2
:
pn hn wn

１行目に対象者の人数 n (n ≤ 1000)、続く n 行に i 人目の対象者の受付番号 pi (1 ≤ pi ≤ n)、センチメートル単位の身長 hi (1 ≤ hi ≤ 200)、キログラム単位の体重 wi (1 ≤ wi ≤ 200) が与えられます。入力は全て整数で与えられます。

Output

データセットごとに「理想の体型」に最も近い人の受付番号（整数）を１行に出力します。最も「理想の体型」に近い人が二人以上いる場合は、受付番号の小さい方を出力することとします。

Sample Input

6
1 165 66
2 178 60
3 180 72
4 160 65
5 185 62
6 182 62
3
3 160 65
2 180 70
1 170 75
0

Output for the Sample Input

3
2

Solution in JAVA (judge verdict: Accepted)

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;


public class Main {

	Scanner sc;
	final double EPS=1e-7;
	
	class Pair{
		public int first;
		public double second;
		public Pair(int a,double b){
			first=a;
			second=b;
		}
		public String toString(){
			return first+" "+second;
		}
	}
	
	class PairComparator implements Comparator<Pair>{

		//第一要素で比較する⇒true
		private boolean first;
		PairComparator(boolean first){
			this.first=first;
		}

		@Override
		public int compare(Pair o1, Pair o2) {
			// TODO Auto-generated method stub
			if(first){
				return o1.first-o2.first;
			}
			else{
				double d1=o1.second,d2=o2.second;
				if(Math.abs(d1-d2)<EPS) return 0;
				else if(d1<d2) return -1;
				else return 1;
			}
		}
	}
	
	int ni(){
		return sc.nextInt();
	}
	
	double BMI(int h,int w){
		return ((double)w)/h/h*10000;
	}
	
	void io(){
		sc=new Scanner(System.in);
		
		int n;
		while((n=ni())!=0){
			Pair[] person=new Pair[n];
			for(int i=0;i<n;++i){
				person[i]=new Pair(ni(),Math.abs(BMI(ni(),ni())-22.0));
			}
			Arrays.sort(person,new PairComparator(true));
			Arrays.sort(person,new PairComparator(false));
			System.out.println(person[0].first);
		}
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new Main().io();
	}

}