Odejmowanie zamiast dodawania

Suma liczb od 1 do 100 (1+2+3+…+100) wynosi 5050. Gdybyśmy chcieli zastąpić niektóre znaki dodawania znakami odejmowania to czy byłoby możliwe otrzymanie wyniku 2345? Jeśli tak, to ile minimalnie plusów trzeba zastąpić minusami by ten wynik osiągnąć?

  • Niestety, nie da się osiągnąć tego wyniku. A potrafisz podać regułę, która powie nam jakie liczby da się osiągnąć? Jest ona dość prosta, wystarczy przyjrzeć się wynikom które osiągamy przy zamianie plusów na minusy.

16
Dodaj komentarz

łukasz

da się osiągnąć taką sumę :)

Pedro

#include
#include
#include

/* run this program using the console pauser or add your own getch, system(„pause”) or input loop */

using namespace std;

int wynik,liczba,znak;

int main() {
srand( time( NULL ) );
wynik = 0;
liczba = 0;
while (wynik !=2345){
while (liczba < 100){
znak = rand() % 2;
liczba +=1;
if (znak == 0){wynik += liczba;}
if (znak == 1){wynik -= liczba;}
if (liczba == 100){cout << wynik<<endl;liczba = 0;wynik = 0;}
}
}
cout <<wynik;
return 0;
}

Powodzenia w szukaniu :D

łukasz

Przykład:
70 + 71 + … + 100 = 2635
5050 – 2635 = 2415
2415 – 2345 = 70
70 można z pozostałych liczb < 70 uzyskać na wiele sposobów.

łukasz

Przykład:
Można zauważyć że liczby 1…100 można „ustawić w pary” tak, że suma pary równa jest 101.
Weźmy 24 takie pary 1+100…24+77. Suma pozostałych 26 par równa jest 0 przy założeniu, że 13 z nich jest z minusem.
24 * 101 = 2424.
2424 – 2345 = 79.
79 – 77 – 2 (które są w wybranych przez nas parach) = 0.

łukasz

Fakt.
Wynik jest parzysty. Obojętnie czy odejmuję parzystą czy nieparzystą to i tak nadal suma jest parzysta.
A przed jedynką też można postawić ‚minus? ;)

Geralt

Hehe
Az się ciśnie na usta powiedzonko „mieć 5zloty i nie mieć 5zloty to już 10zloty”
:-)

Nowicjusz

Zawsze można przed liczbami od 68 do 100
I przed liczbą 33 wstawić kinusy to wtedy wykdzie wynik

Nick

Nie da się otrzymać tej liczby, ponieważ gdybyśmy zaczęli zamieniać znak minus na plus od najwyższej liczby (aby otrzymać jak najmniejsza liczbę minusów ) to każda kolejna liczba, której znak został zmieniony była by liczba parzysta(gdyż podczas zmieniania plusa na minus nie dosc że obejmujemy liczbę to jeszcze sprawiamy że nie została ona dodana). Biorąc więc pod uwagę fakt że 5050 jest liczba parzysta to wynik także byłby liczba parzysta.

MateStu

Zagadka podobna do. Masz dwa kubki obrocone do dolu i jeden do gory. Czy dasz rade obrocic wszystkie do gory jezeli jedniczesnie obracasz dwa wybrane na odwrotna ppzycje. Parzysta – parzysta daje parzysta wiec nigdy nie uzyskamy wyniku nieparzystego.

Olivka

Nie da się. Najlepiej sprawdzić to w takie sposób: 5050-2*którakolwiek z liczb od 1 – 100. Dlaczego *2 bo najpierw ją dodaliśmy a przecież trzeba ją jeszcze odjąć. Wynik który chcemy osiągnąć jest liczbą nieparzystą, a każda liczba mnożona przez 2 jest parzysta. Każda parzysta – parzysta = parzysta :)

Kam98

Mi wyszło że trzeba wstawić 31 minusów. W liczbach od 69 do 100 i między 2 i 3.