//0 2 1 0 0 0 2 1 1 0 1 2 1 0 1 2 1 1 0 1 2 0 0 0 1 2 0 0 1 0 1 0 0 1 1 0 1 1 0 0 0 0 0 0 1 2 1 0 0 1 0 1 0 1 1 1 1 1 1 1 1 2 0 0 1 2 1 1 1 0 import java.util.*; import java.io.*; class DTree{ public static void main(String args[]){ double log2=Math.log(2); int i,j; double syes=0,sno=0,sun=0,over=0,ono=0,oyes=0,rain=0,ryes=0,rno=0; double gain[]=new double[10]; int table[][]=new int[14][5]; Scanner sc=new Scanner(System.in); for(i=0;i<14;i++){ for(j=0;j<5;j++) table[i][j]=sc.nextInt(); } for(int k=0;k<4;k++){ syes=0;sno=0;sun=0;over=0;ono=0;oyes=0;rain=0;ryes=0;rno=0; for(i=0;i<14;i++){ if(table[i][k]==0){ sun++; if(table[i][4]==1) syes++; else sno++; } if(table[i][k]==2){ rain++; if(table[i][4]==1) ryes++; else rno++; } } double eover=45,esun=45,erain=45; if(sno==0 || syes==0) esun=0; else erain=(-1*rno/rain*(Math.log(rno/rain)/log2))+(-1*ryes/rain*(Math.log(ryes/rain)/log2)); //System.out.print(esun+" "+eover+" "+erain+"\n"); double avenout=(sun/14*esun)+(over/14*eover)+(rain/14*erain); //System.out.print("Average Entropy: "+avenout+"\n"); double yes=syes+oyes+ryes; //System.out.print(" Information Gain: "+gain[k]+"\n"); } double max=0,temp=0; for(i=0;i<4;i++){ if(max