/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package codejam.common;

import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Lance Chen
 */
public class CodeHelper {

    private static String FILE_ROOT = "D:/workspace/googlecodejam/meta";

    public static List<List<String>> loadInputsExcludes(String fileName) {
        List<List<String>> result = new ArrayList<List<String>>();
        List<String> lines = FileUtil.readLines(FILE_ROOT + fileName);
        int index = 0;
        for (String line : lines) {
            if (index == 0) {
                index++;
                continue;
            }
            if (index % 2 == 1) {
                index++;
                continue;
            }
            List<String> dataList = new ArrayList<String>();
            String[] dataArray = line.split("\\s+");
            for (String data : dataArray) {
                if (data.trim().length() > 0) {
                    dataList.add(data);
                }
            }
            result.add(dataList);
            index++;
        }
        return result;
    }

    public static List<List<String>> loadInputs(String fileName) {
        List<List<String>> result = new ArrayList<List<String>>();
        List<String> lines = FileUtil.readLines(FILE_ROOT + fileName);
        for (String line : lines) {
            List<String> dataList = new ArrayList<String>();
            String[] dataArray = line.split("\\s+");
            for (String data : dataArray) {
                if (data.trim().length() > 0) {
                    dataList.add(data);
                }
            }
            result.add(dataList);
        }
        return result;
    }

    public static List<String> loadInputLines(String fileName) {
        return FileUtil.readLines(FILE_ROOT + fileName);
    }

    public static void writeOutputs(String fileName, List<String> lines) {
        FileUtil.writeLines(FILE_ROOT + fileName, lines);
    }
}


public class Triplet implements Comparable<Triplet> {
	
	private int s1;
	private int s2;
	private int s3;
	
	public Triplet(int _s1,int _s2,int _s3){
		s1=_s1;
		s2=_s2;
		s3=_s3;
	}
	
	@Override
	public int compareTo(Triplet o) {
		return new Integer(o.getMax()).compareTo(this.getMax());
	}
	
	public boolean isSurprising(){
		if(Math.abs(s1-s2)==2 || Math.abs(s1-s3)==2 || Math.abs(s2-s3)==2) return true;
		return false;
	}
	
	public int getMax(){
		if(s1>s2 && s1>s3) return s1;
		else if (s2>s3) return s2;
		else return s3;
	}
	
	public void setS1(int s1) {
		this.s1 = s1;
	}
	public int getS1() {
		return s1;
	}
	public void setS2(int s2) {
		this.s2 = s2;
	}
	public int getS2() {
		return s2;
	}
	public void setS3(int s3) {
		this.s3 = s3;
	}
	public int getS3() {
		return s3;
	}
	
	

}
