import java.util.*;

public class Tikkupeli {
    public static void main(String[] args) {
        int n = 50;
        int[] poisto = {1, 2, 3};
        char[] taulu = new char[n+1];
        for (int i = 1; i <= n; i++) {
            taulu[i] = 'H';
            for (int j = 0; j < poisto.length; j++) {
                if (i-poisto[j] <= 0) continue;
                if (taulu[i-poisto[j]] == 'H') taulu[i] = 'V';
            }
        }
        int tikut = n;
        Scanner input = new Scanner(System.in);
        while (true) {
            System.out.println("Tikkuja jäljellä: " + tikut);
            System.out.print("Valitse poistomäärä (");
            for (int i = 0; i < poisto.length; i++) {
                if (i != 0) System.out.print(",");
                System.out.print(poisto[i]);
            }
            System.out.print("): ");
            int maara = input.nextInt();
            boolean virhe = true;
            for (int i = 0; i < poisto.length; i++) {
                if (poisto[i] == maara) virhe = false;
            }
            if (virhe) {
                System.out.println("Virheellinen määrä!");
                continue;
            }
            tikut = Math.max(0, tikut-maara);
            System.out.println("Tikkuja jäljellä: " + tikut);
            if (tikut == 0) {
                System.out.println("Hävisit pelin!");
                break;
            }
            int valinta = poisto[0];
            for (int i = 1; i < poisto.length; i++) {
                if (tikut-poisto[i] <= 0) continue;
                if (taulu[tikut-poisto[i]] == 'H') valinta = poisto[i];
            }
            System.out.println("Tekoälyn valinta: " + valinta);
            tikut = Math.max(0, tikut-valinta);
            if (tikut == 0) {
                System.out.println("Voitit pelin!");
                break;
            }
        }
    }
}
