Guten Tag,
ich habe folgendes kleines Programm geschrieben zur Bestimmung wie viele Möglichkeiten es gibt diese Gleichung:
98x + 35y<=10000
durch beliebige x und y zu erfüllen.
Bis hier hin alles easy. Das Programm Dauert seine 5millisek und gibt mir 1402 aus.
Nun würde ich gerne dasselbe mit dieser Gleichung machen: 833x+616<=(10^21)-1
Nach 1,5h habe ich aufgegeben und das Programm abgebrochen. Wie kann ich das Programm optimieren?
ich habe folgendes kleines Programm geschrieben zur Bestimmung wie viele Möglichkeiten es gibt diese Gleichung:
98x + 35y<=10000
durch beliebige x und y zu erfüllen.
Java:
ArrayList <Integer>preise= new ArrayList<Integer>();
for(int i=0;i<103;i++){
for (int j=0;j<286;j++){
int a=i*98+j*35;
if(a>10000){
break;
}
if(preise.contains(a)==false){
preise.add(a);
}
}
}
Bis hier hin alles easy. Das Programm Dauert seine 5millisek und gibt mir 1402 aus.
Nun würde ich gerne dasselbe mit dieser Gleichung machen: 833x+616<=(10^21)-1
Java:
ArrayList <Double>preise= new ArrayList<Double>();
for(double i=0;i<120048019207684.0;i++){
for (double j=0;j<162337662337662338.0;j++){
double a=i*833+j*616;
if(a>99999999999999999999.0){
break;
}
if(preise.contains(a)==false){
preise.add(a);
}
}
}
Nach 1,5h habe ich aufgegeben und das Programm abgebrochen. Wie kann ich das Programm optimieren?