Tehtäväsi on selvittää, montako erilaista -alkiosta minimikekoa voidaan muodostaa luvuista .
Esimerkiksi kun , vaihtoehdot ovat taulukkoesityksenä , ja eli vastaus on .
Voit olettaa, että on korkeintaan ja vastaus on korkeintaan .
Python
Toteuta tiedostoon allheaps.py
funktio count
, joka antaa kekojen määrän.
def count(n): # TODO if __name__ == "__main__": print(count(2)) # 1 print(count(3)) # 2 print(count(4)) # 3 print(count(5)) # 8 print(count(10)) # 3360
Java
Toteuta tiedostoon AllHeaps.java
metodi count
, joka antaa kekojen määrän.
public class AllHeaps { public long count(int n) { // TODO } public static void main(String[] args) { AllHeaps a = new AllHeaps(); System.out.println(a.count(2)); // 1 System.out.println(a.count(3)); // 2 System.out.println(a.count(4)); // 3 System.out.println(a.count(5)); // 8 System.out.println(a.count(10)); // 3360 } }