public static void solve(String fileName) throws FileNotFoundException {

        File f = new File(fileName);
        Scanner s = new Scanner(f);

        HashSet<Double> set = new HashSet<Double>();
        ArrayList<Double> lst = new ArrayList<Double>();
        while(s.hasNext()){
            Double temp = s.nextDouble();

            if(set.contains(temp))
                continue;

            set.add(temp);
            lst.add(temp);
        }

        Collections.sort(lst);
        System.out.println("sorted");

        set = new HashSet<Double>();
        for(int i = 0; i < lst.size() - 1; i ++){
            double tHigh = 10000.0 - lst.get(i);
            double tLow = -10000.0 - lst.get(i);

            int index = binarySearch(lst, tHigh);

            for(int j = index; j >= 0; j --){
                if(i ==j) continue;

                if(lst.get(j) < tLow) break;

                double curValue = lst.get(j) + lst.get(i);
                set.add(curValue);
            }

        }

        System.out.println(set.size());

    }