Witam wszystkich!
W tym roku będę zdawał maturę, m. in. z informatyki. Robiąc zadania z matury z informatyki z poprzednich lat natknąłem się na zadanie, którego za nic nie mogę rozwiązać. Od razu pisze, że nie chodzi o sam końcowy wynik, bo to znam. Chciałbym znać tok myślenia, jakim sposobem można dojść do wyniku końcowego.
Mowa tu o zadaniu 2-gim z matury 2007, podpunkt c ( )
Rozwiązanie zadania polega właściwie na znalezieniu wzoru, który by wyznaczał na ile pól może wykonać ruch hetman na pustej szachownicy o rozmiarze NxN, znajdując się na polu (X;Y).
Każda wskazówka się przyda.
Pozdrawiam, acre117.
Zadanie z matury 2007 - problem
Zadanie z matury 2007 - problem
Zauważ że hetman zawsze bije tą samą liczbę pól w kierunkach pionowym i poziomy czyli mam \(\displaystyle{ 2(n-1)}\), wystarczy rozpatrzeć skosy. Można też łatwo zauważyć że liczba pól jest taka sama na koncentrycznych kwadratach. Wynika z tego także że im bliżej środka tym liczba pól większa.
Nie chce ci od razu mówić całego rozwiązania bo lepiej wpaść na nie samemu.
Nie chce ci od razu mówić całego rozwiązania bo lepiej wpaść na nie samemu.
Zadanie z matury 2007 - problem
No właśnie w tych skosach największy problem.
Doszedłem do czegoś takiego. Na kwadracie najbardziej zewnętrznym liczba pól jest najmniejsza, a więc
\(\displaystyle{ k = 3(n-1) + 2*x}\), przy czym
k - liczba pól,
x - stopień 'zagłębienia' w szachownice.
Dla najbardziej skrajnego kwadratu \(\displaystyle{ x = 0}\), dla następnego \(\displaystyle{ x=1}\) itd.
Pozostaje znaleźć wzór na stopień zagłębienia w szachownice...
Doszedłem do czegoś takiego. Na kwadracie najbardziej zewnętrznym liczba pól jest najmniejsza, a więc
\(\displaystyle{ k = 3(n-1) + 2*x}\), przy czym
k - liczba pól,
x - stopień 'zagłębienia' w szachownice.
Dla najbardziej skrajnego kwadratu \(\displaystyle{ x = 0}\), dla następnego \(\displaystyle{ x=1}\) itd.
Pozostaje znaleźć wzór na stopień zagłębienia w szachownice...
- flashion
- Użytkownik
- Posty: 113
- Rejestracja: 20 sty 2009, o 01:27
- Płeć: Mężczyzna
- Podziękował: 6 razy
- Pomógł: 7 razy
Zadanie z matury 2007 - problem
let's do it.
skoro poziom i pion już mamy, rozpatrzmy przekątne.
moje wskazówki:
przekątna 1 (rosnąca z dołu na górę):
zauważmy, że po lewej stronie \(\displaystyle{ H}\) mamy tyle pól ile wsp. \(\displaystyle{ x}\) lub \(\displaystyle{ y}\) brakuje do \(\displaystyle{ 1}\).
analogicznie po prawej stronie.
przekątna 2 (malejąca):
zauważmy, że wszystkie te punkty mają stałą sumę współrzędnych.
wskazówki+rozwiązanie:
Pozdrawiam
@abc666: dzięki za zauważenie błędu.
skoro poziom i pion już mamy, rozpatrzmy przekątne.
moje wskazówki:
przekątna 1 (rosnąca z dołu na górę):
zauważmy, że po lewej stronie \(\displaystyle{ H}\) mamy tyle pól ile wsp. \(\displaystyle{ x}\) lub \(\displaystyle{ y}\) brakuje do \(\displaystyle{ 1}\).
analogicznie po prawej stronie.
przekątna 2 (malejąca):
zauważmy, że wszystkie te punkty mają stałą sumę współrzędnych.
wskazówki+rozwiązanie:
Ukryta treść:
@abc666: dzięki za zauważenie błędu.
Ostatnio zmieniony 8 lut 2009, o 11:58 przez flashion, łącznie zmieniany 4 razy.
Zadanie z matury 2007 - problem
flashion, twoje rozumowanie nie jest poprawne, wg twojego wzoru hetman bije tyle samo pól na polu o wsp. (2,1) oraz np. (2,2) a to jest nieprawda
-
- Użytkownik
- Posty: 1
- Rejestracja: 23 sty 2011, o 16:08
- Płeć: Mężczyzna
- Lokalizacja: Żyrardów
Zadanie z matury 2007 - problem
Jakby ktoś potrzebował:
Dla mnie działa przynajmniej w punkcie b) zadania maturalnego. Poprawiać jak źle.
Kod: Zaznacz cały
int Hetman(int x, int y, int n)
{
int k = 0; // współczynnik zagłębienia
int wynik = 0;
int temp = n;
if(x < 0 || y < 0 || x > n || y > n || n < 0)
return -1;
if(n == 1)
return 0;
else
{
while(n > 1)
{
if( x==1 || x==n || y==1 || y==n )
{
wynik = 3*(temp-1) + 2*k;
break;
}
else
{
n -= 2;
x--;
y--;
k++;
}
}
}
return wynik;
}
Dla mnie działa przynajmniej w punkcie b) zadania maturalnego. Poprawiać jak źle.
Zadanie z matury 2007 - problem
\(\displaystyle{ 1 \le x \le N\\
1 \le y \le N\\
3*(N-1)+2(\min[\left \min(x, N-x+1), \min(y, N-y+1)\right]-1)}\)
7tm4s
1 \le y \le N\\
3*(N-1)+2(\min[\left \min(x, N-x+1), \min(y, N-y+1)\right]-1)}\)
7tm4s