import java.util.*; public class Alamprogrammid3{ static Map faktoriaaliPuhver= new HashMap(); static int kysitud=0; static int arvutatud=0; public static int faktoriaal(int arv){ if(faktoriaaliPuhver.get(arv)==null){ int vastus=1; for(int i=2; i<=arv; i++){ vastus=vastus*i; } arvutatud++; faktoriaaliPuhver.put(new Integer(arv), new Integer(vastus)); } kysitud++; return faktoriaaliPuhver.get(arv); } public static int kombinatsioonideArv(int n, int m){ return faktoriaal(n)/faktoriaal(n-m)/faktoriaal(m); } public static void main(String[] arg){ System.out.println(faktoriaal(4)); System.out.println(kombinatsioonideArv(4, 3)); System.out.println(kombinatsioonideArv(4, 2)); System.out.println("Kysiti "+kysitud+", arvutati "+arvutatud); } } // n!/(n-m)!/m! //4st pallist 3 kaupa // 4! =24 // 1! =1 // 3! =6 // 24/1/6=4 // s p k r