Dolepki
Mam słabość do konkatenacji jako działania arytmetycznego, którym jednak oficjalnie konkatenacja… nie jest. Trudno się zresztą temu dziwić, bo „zlepianie” liczb wygląda trochę niepoważnie, wręcz dziecinnie i praktycznie niczemu nie służy poza zabawą. Dwie liczby, np. 14 i 2, możemy dodać (14+2=16), odjąć (14–2=12), pomnożyć (14×2=28) lub podzielić (14:2=7), ale wynik będzie największy, gdy je „skonkatenujemy”, czyli „skleimy”, korzystając w zapisie ze znaku konkatenacji złożonego z dwu pionowych kresek: 14||2=142 lub 2||14=214. Jak widać konkatenacja jest, podobnie jak odejmowanie i dzielenie, działaniem nieprzemiennym.
Mimo niepowagi sklejanie liczb gości jednak czasem w całkiem poważnych zadaniach, bo wiąże się z łamaniem głowy, które jest esencją matematyki. Przygotowując artykuł o konkatenacji spróbowałem wymyślić kilka takich zadań. Oto jedno z nich.
Dodałem kolejne liczby naturalne od 1 do X, korzystając z wzoru na sumę wyrazów ciągu arytmetycznego. Po dokładnym przyjrzeniu się wynikowi zauważyłem, że zamiast stosowania wzoru wystarczyło, abym skorzystał z konkatenacji „dolepiając” do X dwie liczby – jedynkę na początku oraz 153 na końcu – wynik byłby taki sam. Jaką liczbą był X?
Komentarze z prawidłowym rozwiązaniem ujawniane są wieczorem w przeddzień kolejnego wpisu (z błędnym zwykle od razu). Wpisy pojawiają się co 7 dni.
Komentarze
5582
Na szybko – programowo .
Czy można to ugryźć inaczej?
Bardzo ciekawe zadanie!
Jedyne rozwiązanie to X = 5582.
Można stosunkowo łatwo znaleźć szacowania na X – liczba cyfr liczby 1 + 2 + … + X musi być taka sama jak liczba cyfr liczby 1||X||153, a stąd [log(X(X+1))/2] = [log(X)] + 4 ([…] oznacza część całkowitą).
W połączeniu z nierównościami x-1 <= [x] <= x, daje nam to szacowanie 1999 <= X <= 199999. Potem wystarczy tylko krótkim programem sprawdzić, że w tym przedziale jedynym rozwiązaniem jest 5582.
1 + … + 5582 = 15582153
Metoda siłowa, czyli nieoceniony Excel. Ciekawe, czy dałoby się na piechotę.
5582, choć przyznam, że metodą nieco siłową. Ale chcę jeszcze przed świętami wysłać rozwiązanie, żeby życzyć Gospodarzowi i wszystkim wesołych i przede wszystkim zdrowych świąt. Choć rozwiązanie jest chyba dobre, a więc większość przeczyta to dopiero po świętach.
5582
Gdyby zapisać to jako skrócony format daty, to tego dnia zmarła autorka Bilder und Gedichte aus der Emigration
X=5582
5582 (z równania kwadratowego x(1+x)/2 = 10^k+(10^3)x+153, gdzie k jest dodatkową niewiadomą).
Liczbą X jest 5582, a suma wynosi 15582153.
Raczej jedyne rozwiązanie: X = 5582
https://www.fotosik.pl/zdjecie/ae35aed1649bfb57
Konkatenacja to przyszłość matematyki
https://youtu.be/Zh3Yz3PiXZw
Zadanie sprowadza się do znalezienia ograniczeń na X i rozwiązania równań kwadratowych. X może być tylko 4 lub 5 cyfrową liczbą.
x*(x+1)/2=10^7+10^3*x+153
x^2-1999*x-20000306=0;
Δ = 83997225
x1 = -3583
x2 = 5582
Pierwsze odrzucamy
Suma 15582153
Równanie przy x pięcioznakowym ma rozwiązania ułamkowe.
X = 5582
Jest to raczej jedyne rozwiązanie.
Suma ciągu arytmetycznego od wyrazu k-tego do wyrazu n-tego to:
S(k,n)=((ak+an)/2)(n-k+1)
Suma ma się kończyć na 153. 153 to jednocześnie suma liczb od 1 do 17 (1+…+17=153). Zatem szukana suma S(k,n) to suma liczb od 18 do X, czyli k=18, a n = X. Cechą S(k,n) jest to, że ma ostatnie 3 cyfry równe 000, bo odjęliśmy 153 dzięki temu, że wiemy, że to suma pierwszych 17 pominiętych w sumie S(k,n) liczb.
Teraz trzeba metodą prób i błędów sprawdzić sumy (rozwiązać równanie) dla różnej liczby cyfr. Ja już znam wynik, więc od razu przejdę do sumy 8-cyfrowej:
S(k,n) = 10 000 000 + 1000x = ((18 + x)/2)*(x-18+1)
Po przekształceniu:
x^2-1999x-20 000 306 = 0
Mamy dwa rozwiązania: x1=5582 oraz x2=-3583. Rozwiązanie x2 wykluczamy, bo jest liczbą ujemną, zostaje x1=5582 jako dodatnia całkowita.
Szczerze mówiąc, spodziewałem się mniejszej liczby jako rozwiązania:)
2*10^(4+3) + 2*10^3 || ……
X1= – 3583, X2= 5582
Y = 5.582
Weryfikacja : Y*(Y+1)/2 =15.582.153 = 1 || 5582 || 153
Q.E.D.
SMath wyliczal pierwiastki rownania kwadratowego :
Y*(Y+1)/2 – [ ( 10 exp. n_dig_Y_pl_3 ) + 1.000*Y +153 ] = 0 ,
n_dig_Y = number of Y digits, startowalem z 3, 4, …,
dla 4 rozwiazanie istnieje, pierwiastek dodatni !!!, calkowity !!!!!!
–> 5.582
5.582