Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Kolikot {
- private int[] kolikot;
- private boolean[] mukanaTaulukko;
- private int haluttuArvo;
- private int kolikoita;
- private int laskuri;
- public Kolikot() {
- this.kolikot = new int[20];
- this.mukanaTaulukko = new boolean[20];
- }
- public void lisaaKolikko(int arvo) {
- this.kolikot[kolikoita] = arvo;
- kolikoita++;
- }
- public int laskeYhdistelmat(int summa) {
- haluttuArvo = summa;
- laskuri = 0;
- haku(0);
- return laskuri;
- }
- private void haku(int i) {
- if (i == kolikoita) {
- int summa = 0;
- for (int j = 0; j < kolikoita; j++) {
- if (mukanaTaulukko[j]) {
- summa += kolikot[j];
- }
- }
- if (summa == haluttuArvo) {
- laskuri++;
- }
- } else {
- mukanaTaulukko[i] = true;
- haku(i + 1);
- mukanaTaulukko[i] = false;
- haku(i + 1);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment