Hallo
Kennt einer von Euch eine Möglichkeit folgendes Problem effizient (also mit möglichst geringem Aufwand) zu lösen?
1. Gegeben seien 2 Zahlen X und Y.
2. Nun erzeuge ich 2 Zufallszahlen A und B und erzeuge daraus die Zahl: Z = A*X + B*Y
Den Schritt Nr.2 wiederhole ich mehrmals (n mal) und erzeuge verschiedene Zahlen Z1 bis Zn.
z.B.
X = 123
Y = 98
Nun erzeuge ich die Zahlen: Z = Zufallzahl() * X + Zufallszahl() * Y
Z1 = 45 * 123 + 87 * 98 = 14061
Z2 = 21 * 123 + 64 * 98 = 8855
Z3 = 76 * 123 + 83 * 98 = 17482
Mein Anliegen:
Wenn ich nur die Zahlen Z1 bis Zn kenne, wie kann ich daraus X und Y ermitteln?
Es muss nichtmal das "orginal" X und Y sein, da es ja möglich ist, dass auch andere Zahlen als X und Y sich eignen um die Zahlen Z1 bis Zn zu bilden.
z.B.
X = 4
Y = 5
Nun erzeuge ich die Zahlen: Z = Zufallzahl() * X + Zufallszahl() * Y
Z1 = 5 * 4 + 2 * 5 = 30
Z2 = 15 * 4 + 6 * 5 = 90
Z3 = 20 * 4 + 14 * 5 = 150
Hier könnte man auch X=20 und Y=10 ermiteln da sich die 20 und 10 auch eignen um die 30, 90 und die 150 aus A * X + B * Y zu bilden.
1 * 20 + 1 * 10 = 30
4 * 20 + 1 * 10 = 90
7 * 20 + 1 * 10 = 150
Oder man könnte X = 30 und Y = 0 ermitteln, da alle Zahlen durch 30 teilbar sind.
Wenn alle Zahlen einen grössten gemeinsamen Teiler haben, ist die Lösung natürlich leicht.
Was aber wenn es keinen ggT > 1 gibt, der alle Zahlen restlos teilt?
Gibt es da einen Weg der deutlich schneller ist, als alle Möglichkeiten zu probieren?
Kennt einer von Euch eine Möglichkeit folgendes Problem effizient (also mit möglichst geringem Aufwand) zu lösen?
1. Gegeben seien 2 Zahlen X und Y.
2. Nun erzeuge ich 2 Zufallszahlen A und B und erzeuge daraus die Zahl: Z = A*X + B*Y
Den Schritt Nr.2 wiederhole ich mehrmals (n mal) und erzeuge verschiedene Zahlen Z1 bis Zn.
z.B.
X = 123
Y = 98
Nun erzeuge ich die Zahlen: Z = Zufallzahl() * X + Zufallszahl() * Y
Z1 = 45 * 123 + 87 * 98 = 14061
Z2 = 21 * 123 + 64 * 98 = 8855
Z3 = 76 * 123 + 83 * 98 = 17482
Mein Anliegen:
Wenn ich nur die Zahlen Z1 bis Zn kenne, wie kann ich daraus X und Y ermitteln?
Es muss nichtmal das "orginal" X und Y sein, da es ja möglich ist, dass auch andere Zahlen als X und Y sich eignen um die Zahlen Z1 bis Zn zu bilden.
z.B.
X = 4
Y = 5
Nun erzeuge ich die Zahlen: Z = Zufallzahl() * X + Zufallszahl() * Y
Z1 = 5 * 4 + 2 * 5 = 30
Z2 = 15 * 4 + 6 * 5 = 90
Z3 = 20 * 4 + 14 * 5 = 150
Hier könnte man auch X=20 und Y=10 ermiteln da sich die 20 und 10 auch eignen um die 30, 90 und die 150 aus A * X + B * Y zu bilden.
1 * 20 + 1 * 10 = 30
4 * 20 + 1 * 10 = 90
7 * 20 + 1 * 10 = 150
Oder man könnte X = 30 und Y = 0 ermitteln, da alle Zahlen durch 30 teilbar sind.
Wenn alle Zahlen einen grössten gemeinsamen Teiler haben, ist die Lösung natürlich leicht.
Was aber wenn es keinen ggT > 1 gibt, der alle Zahlen restlos teilt?
Gibt es da einen Weg der deutlich schneller ist, als alle Möglichkeiten zu probieren?