package dancinggooglers;

import java.io.File;
import java.util.Scanner;

public class DanceScoreCalculator {


    public static void main(String[] args) {
        if(args.length <= 0 || args[0] == null) {
            System.out.println("You must enter a file to read");
            System.out.println("Usage: blah <filename>");
            System.exit(0);
        }

        File argFile = new File(args[0]);
        try {
            Scanner googleSpeakScanner = new Scanner(argFile);
            String firstLine = googleSpeakScanner.nextLine();
            Integer linesToScan = new Integer(firstLine);
            for(int i = 1; i <= linesToScan; i++) {
                String googleDancerLine = googleSpeakScanner.nextLine();
                DanceScoreCase danceCase = new DanceScoreCase(googleDancerLine);
                System.out.println(String.format("Case #%d: %d", i, danceCase.maxDancersThatCouldPass()));
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}

package com.renoux.gael.codejam.cj2012.qb;

import com.renoux.gael.codejam.fwk.Solver;
import com.renoux.gael.codejam.utils.ArrayUtils;
import com.renoux.gael.codejam.utils.Input;
import com.renoux.gael.codejam.utils.Output;

public class QB extends Solver {

	public static void main(String... args) throws Exception {
		new QB().run();
	}

	@Override
	protected void solveCase(Input in, Output out) {
		System.out.println();
		int[] line = ArrayUtils.parseInts(in.readLine().split(" "));
		int ctGooglers = line[0];
		int ctSurprises = line[1];
		int target = line[2];

		int ctStars = 0;

		for (int i = 3; i < line.length; i++) {
			int totalScore = line[i];

			int lowestScoreNoSurprise = Math.max(target - 1, 0);
			int lowestScoreWithSurprise = Math.max(target - 2, 0);

			int lowestTotalNoSurprise = target + 2 * lowestScoreNoSurprise;
			int lowestTotalWithSurprise = target + 2 * lowestScoreWithSurprise;

			if (lowestTotalNoSurprise <= totalScore) {
				ctStars++;
				System.out.println("Guy " + (i - 2) + " did great");
			} else if (lowestTotalWithSurprise <= totalScore && ctSurprises > 0) {
				ctStars++;
				ctSurprises--;
				System.out.println("Guy " + (i - 2) + " did ok");
			}
		}

		out.writeLine(ctStars);
	}

	@Override
	protected String getProblemName() {
		return "QB";
	}

	@Override
	protected boolean disableSmall() {
		return true;
	}

	@Override
	protected boolean disableLarge() {
		return true;
	}
}
