Sunteți pe pagina 1din 17

Transla ia

Transla ia unei figuri geometrice reprezint mi carea tuturor componentelor ei pe o anumita distan si direc ie. Aceast transformare poate fi u or caracterizat de un vector v = (dx, dy). Cnd vrem s translat m un punct P(x, y) dup v, e de ajuns s facem opera ia P = P + v. Astfel, P are cooronatele (x + dx, y + dy). Propriet i:
y y

y y y y

p streaz distan ele; pastreaz orientarea poligoanelor (adic , dac vrfurile poligonului sunt parcurse n ordine trigonometric , atunci vrfurile corespondente din poligonul transformat vor fi i ele n ordine trigonometric ); p streaz unghiurile; o dreapt va fi transformat n alt dreapt paralel cu prima; nafar de transla ia trivial de vector v = (0, 0), aceast transformare nu are puncte fixe (adic orice punct va fi transformat ntr-un punct diferit); transla ii successive vor rezulta tot ntr-o transla ie (adic , dac vrem s translat m un punct dupa v i apoi dup v1, atunci ob inem acela i rezultat dac translat m direct dup v + v1); transla ia este comutativ ;

Simetria
Exist dou tipuri de simetrii: simetria fa de un punct i simetria fa a de o dreapt . Un punct A l are simetric pe A fa de un punct O, dac segmentul AA are ca mijloc punctul O. Dac avem un punct (x0, y0) c ruia vrem s i afl m simetricul fa de un punct de coordonate (x, y) atunci acesta va fi (2x x0, 2y y0). Propriet i:
y y

y y y y y

p streaz distan ele; p streaz orientarea poligoanelor (adic , dac varfurile poligonului sunt parcurse n ordine trigonometric , atunci vrfurile corespondente din poligonul transformat vor fi i ele n ordine trigonometric ); p streaz unghiurile; drepte paralele vor fi transformate n drepte paralele; are ca punct fix punctul O, iar drepte fixe cele care trec prin punctul O; simetrii succesive dup centre diferite O1(x1, y1) O2(x2, y2) sunt o transla ie de vector v = 2(x2 x1); simetriile dup un punct nu comut ;

S calcul m simetricul unui punct P(x0, y0) fa de o dreapt de ecua ie ax + by + c = 0. Not m cu d distan a de la punctul P la dreapt , , i cu (m1, m2) cosinii

directori ai vectorului n(a, b) normal la dreapt . Valorile cosinilor directori sunt: i . Vom alege semnul minus dac ax0 + by0 + c > 0 iar semnul plus dac ax0 + by0 + c < 0. Astfel, simetricul punctului P va avea coordonatele (x0 + 2*d*m1, y0 + 2*d*m2). Propriet i:
y y

y y y y y y

p streaz distan ele; nu p streaz orientarea poligoanelor (adic , dac varfurile poligonului sunt parcurse n ordine trigonometric , atunci vrfurile corespondente din poligonul transformat vor fi n sens orar); p streaz unghiurile; drepte paralele vor fi transformate n drepte paralele; are ca puncte fixe dreapta de simetrie; simetrii succesive dup drepte paralele sunt o transla ie; simetrii succesive dup drepte concurente sunt rota ii; simetriile nu comut ;

Rota ia
Aceasta este o transformare care rote te punctele n sens trigonometric n jurul unui punct numit centru de rota ie dup un unghi fixat numit unghi de rota ie. Dac avem rota ia de centru O(x0, y0) i unghi alfa, atunci imaginea unui punct P(x, y) va fi P(x0 + (x x0- (y y ) * cos(alfa)0) * sin(alfa), y0 + (x x0+ (y y ) * sin(alfa)0) * cos(alfa)). Propriet i:
y y y y y y y y

p streaz distan ele; p streaz orientarea poligoanelor; p streaz unghiurile; drepte paralele vor fi transformate n drepte paralele; dac nu este o rota ie trivial de unghi 0 atunci are ca punct fix centrul de rota ie; nu are drepte fixe, dar are cercuri fixe centrate n centrul de rota ie; dou rota ii succesive R1(O1, alfa) i R2(O2, beta) se compun ntr-o transla ie sau o rota ie R3(O3, alfa + beta); n general rota iile nu comut ;

Omotetia
Aceasta este o transformare ce scaleaz obiectele n func ie de un centru de omotetie i un raport. Un punct P(x, y) transformat dup o omotetie H(O(x0, y0), k) (centru O i raport k) va avea imaginea P(x0 + k * (x - x0), y0 + k * (y - y0)). Propriet i:

y y y y y y y

nu p streaz distan ele; p streaz orientarea poligoanelor; p streaz unghiurile; drepte paralele vor fi transformate n drepte paralele, iar transformata unei drepte va fi paralel cu dreapta; are ca punct fix centrul de omotetie; dou omotetii succesive H1(O1, k1) i H2(O2, k2) se compun ntr-o transla ie sau omotetie H3(O3, k1 + k2); n general omotetiile nu comut ;

Desf urarea n plan


Aceasta nu este o transformare geometric propriu-zis , ci mai mult o tehnic folositoare n rezolvarea unor probleme pe care o pute i vedea aplicat n problemele ce urmeaz ... To do: de verificat teoria de aici. :)

Aplica ia 1

Fie dou puncte A i B de aceia i parte a unei drepte d. Se cere s se determine un punct M pe dreapta d cu proprietatea c suma AM + MB e mininim .

Rezolvare:
Ducem simetricul punctului A fa de dreapta d pe care l not m cu A. Oricare ar fi un punct N pe dreapta d, AN = AN pentru c triunghiul AAN este isoscel avnd dreapta d i n l ime i median . Astfel, avem c AN + NB = AN + NB, deci pentru ca s minimiz m suma AM + MB trebuie de fapt s minimiz m suma AM + MB. Punctele A i B sunt situate de p r i diferite ale dreptei, deci punctul M trebuie situat la intersec ia segmentului AB cu dreapta d.

Aplica ia 2

Fie dou puncte A i B n interiorul unui unghi format de semidreptele d1 i d2 care au cap tul comun O. Se cere s se determine dou puncte M i N astfel ca M s apar in lui d1 i N s apar in lui d2 iar suma AM + MN + NB s fie minim .

Rezolvare:
Folosim aceea i idee: ducem simetricul punctului A, notat cu A, fa de dreapta d1 i simetricul punctului B notat cu B fa de dreapta d2. Orice puncte M i N am alege, avem c AM + MN + NB = AM + MN + NB. Pentru a minimiza suma AM + MN + NB trebuie ca M i N s fie intersec iile segmentului AB cu semidreptele d1 i d2.

Aplica ia 3

Dndu-se un triunghi ascu itunghic ABC se cere s se determine un triunghi nscris n acesta de perimetru minim.

Rezolvare:

Lu m un punct M pe baza BC a triunghiului ABC, un punct P pe latura AB i un punct N pe latura AC. Dac avem M simetricul lui M fa de AB i M simetricul lui M fa de AC, atunci MN + NP + PM = MN + NP + PM. Ca s minimiz m aceast sum , punctele P i N trebuie s fie la intersec ia segmentului MM cu laturile AB, respectiv AC. Perimetrul triunghiului MNP va fi egal cu lungimea segmentului MM. Observ m c unghiul MAM are m sura egal cu 2 * m sura unghiului BAC i c triunghiul MAM e isoscel de latur egal cu AM. Pentru ca MM s aib lungimea minim trebuie ca AM s fie ct mai scurt. Acest segment este minim atunci cnd M este piciorul nal imii din A. La fel putem s deducem c N este piciorul n l imii din B, iar P este piciorul n l imii din C. Astfel, solu ia de perimetru minim este triunghiul ortic.

Aplica ia 4: PolyLine (TopCoder) X


Se consider un dreptunghi cu col urile de coordonate (0, 0) , (a, 0), (a, b), (0, b). Mai consider m dou puncte A i B de coordonate (x1, y1) i (x2, y2) n interiorul dreptunghiului. Se cere s se determine lungimea minim a unei linii frnte ce porne te din A ajunge n B i intersecteaz fiecare latur a dreptunghiului. n figura de mai jos, avem un dreptunghi de dimensiuni 4 3 i trei posibilit i de a plasa dou puncte n interiorul dreptunghiului, mpreun cu solu iile optime. Rezultatele pentru cele trei exemple sunt: 7.8102, 8.6023, respectiv 9.4339.

Rezolvare:
Este evident c o solu ie optim va fi format din cinci segmente. Putem ncerca toate ordinele posibile ale drumului liniei frnte, fiind 4! = 24 asemenea ordini. Pentru fiecare ordine c ut m drumul optim. Acesta poate fi g sit folosind trucul prezentat n problemele anterioare. S lu m un exemplu: pentru punctele A(1, 2) i B(1,3) i dreptunghiul de dimensiuni 4 i 3, lu m punctele M, N, P, Q pe laturile din stnga, jos, dreapta respectiv sus ale dreptunghiului astfel nct s minimiz m suma AM + MN + NP + PQ + QB. Acum, vom duce simetricul lui A, notat cu A, fa de latura din stnga i simetricul lui B, notat cu B, fa de latura de sus. Avem c AM = AM i QB = QB. Deci, ca s minimiz m suma AM + MN + NP + PQ + QB trebuie s minimiz m suma AM + MN + NP + PQ + QB. Vom duce simetricul lui A, notat prin A, fa de latura de jos, i simetricul lui B, notat prin B, fa de latura din dreapta. Avem c AM + MN <= AN i c PQ + QB <= QB, deci ob inem c pentru a minimiza suma AM + MN + NP + PQ + QB trebuie s minimiz m suma AM + MN + NB. Putem realiza acest obiectiv dac M i N vor fi intersec iile segmentului AB cu latura de jos, respectiv latura din dreapta a dreptunghiului, iar solu ia este exact distan a de la A la B.

Aplica ia 5 (Olimpiada Leton , 1997)

Laturile unui teren dreptunghiular de biliard de dimensiuni 43 73 sunt etichetate cu literele A, R, Z, D. O bil B (dimensiunile c reia pot fi ignorate) este plasat n interiorul acestui teren la 13 centimetri distan de latura R i la 29 de centimetri distan de latura D. Un juc tor i pune tacul pe latura R la un punct ce e situat la K centimetri distan de latura D i love te direct bila B. Bila se mi c drept i dac e cazul love te marginile terenului. Mi carea bilei se supune legilor fizicii, astfel, cnd bila se love te de margine ea va avea o traiectorie simetric cu traiectoria ini ial fa de dreapta perpendicular pe margine n punctul de impact. O parte din traiectoria bilei o pute i vedea n figur . Problema esta pentru un num r fix K (0 K 73) i N (0 N 109). S se determine distan a bilei fa de latura R i distan a fa de latura D, dup ce bila s-a deplasat exact N centimetri.

Rezolvare:
O rezolvare bazat pe simularea mi c rii bilei pare anevoioas , iar din cauza faptului c N poate fi foarte mare, acest algoritm nu este eficient. O rezolvare elegant este urm toarea. nti umplem planul cu o gril infinit de dreptunghiuri de dimensiuni 43 73. Dac am l sa ca bila s i continue mi carea i am ignora prima lovire a marginii, n terenul adiacent, atunci traiectoria bilei ar fi de la trecerea marginii simetric cu traiectoria normal a bilei, deci ar fi ca i cum am reflecta ntreaga tabl . Acest fenomen se repet de fiecare dat cnd atingem o margine. Astfel, dac ducem un segment pe direc ia de deplasare a bilei, ce pleac din B, de lungime N, i se termin n C atunci putem vedea n ce dreptunghi este el inclus, i n func ie de acest dreptunghi s transform m punctul C n pozi ia final a bilei n dreptunghiul ini ial.

Aplica ia 6: Pool (Timus)

Programatorului Vasile i place s se plimbe prin biroul lui dreptunghiular. El ncepe drumul din locul unde este situat biroul lui i se plimb pn cnd crede c ar trebui s se apuce de lucru din nou. Drumul lui urmeaz legea de mi care dat de unghiul de inciden este egal cu unghiul de reflexie. Vasile se mi c de la zid la zid n linie dreapt . eful direct al lui Vasile este interesat ct timp pierde acesta n plimb rile lui. Este u or s afl m timpul, mp r ind distan a parcurs la viteza medie a lui Vasile (aceasta a fost deja calculat de ef), deci trebuie s se afle distan a parcurs . Se tie ordinea n care au fost atin i pere ii ntruct Vasile, fiind neatent, se love te de pere i i astfel se aud bufniturile n fiecare zid. Se dau dimensiunile camerei lui Vasile: W i D (0 W, D 100), pozi ia ini ial , pozi ia final i secven a de litere N, S, E, V care este ordinea n care sunt atin i pere ii. De exemplu, n imagine pere ii sunt atin i n ordinea NVEVES. Num rul de coliziuni nu dep este 1000, pozi iile ini iale i finale nu se afl pe marginile dreptunghiului, iar drumul lui Vasile nu va trece prin vreun col al nc perii.

Rezolvare:
Precum n problema anterioar , cnd Vasile atinge un perete mi carea lui se oglinde te fa de mi carea normal . Vom procesa fiecare instruc iune din irul n care e prezentat ordinea atingerii pere ilor. O instruc iune va nsemna o reflexie a dreptunghiului curent i a punctului destina ie al lui Vasile. Dup ce vom procesa toate coliziunile ob inem dreptunghiul final i punctul de destina ie transformat n interiorul acestui dreptunghi. Acum linia frnt care unea punctul de start s-a transformat ntr-un segment de dreapt ntre punctul de start i imaginea punctului final dup ce s-a realizat asupra lui seria de transform ri.

Aplica ia 7: NCushion (TopCoder)


Pe o mas de biliard de dimensiuni 2000 1000 sunt a ezate dou bile la coordonate ntregi. Se cere s se determine num rul de posibilit i de lovire a primei bile, astfel ca ea s loveasc exact de N ori manta (1 N 500) i apoi s loveasc cea de a doua bil . Mi carea bilei se consider ideal , iar dac bila love te un col se consider c s-au atins dou mante i bila se va mi ca pe aceia i direc ie n sens opus.

Rezolvare:

Solu ia folose te ideea de mai sus de a reflecta tabla de biliard mpreun cu pozi ia celei de a doua bile. A a cum am v zut n problema anterioar , fiecare ir de atingeri al mantelor ne d exact un mod n care prima bil o poate lovi pe cea de a doua. Dac tim n ce dreptunghi reflectat vrem s lovim bila a doua, fixnd acest dreptunghi, avem o direc ie fixat i un ir de mante fix pe care le va atinge bila dac va fi lovit n acea direc ie. n figur avem cazul n care trebuie s lovim exact dou mante nainte s atingem a doua bil . n desen am colorat cu negru bila ini ial i cu alb a doua bil i imaginile ei. Cu linie punctat am desenat traiectoriile care ar fi atins bila a doua f r a atinge de dou ori manta i cu linie neagr direc iile pe care manta ar fi atins exact de dou ori. Observ m c pentru a atinge manta de N ori o bil trebuie s intre n N alte dreptunghiuri. Deci, asociem pozi iilor dreptunghiurilor un sistem de coordonate n care dreptunghiul ini ial are coordonatele (0, 0). Pentru ca bila s ating exact N mante, coordonatele (x, y) ale dreptunghiului trebuie s satisfac egalitatea |x| + |y| = N. Mai trebuie s avem grij ca drumul bilei care atinge N mante s nu ating a doua bil nainte de atingerea tuturor mantelor. Aceste observa ii ne duc la urm toarea solu ie: pentru toate dreptunghiurile (x, y), care satisfac proprietatea |x| + |y| < N, p str m ntr-o structur de date (structura preferat de autor ar fi un tabel de dispersie) vectorul asociat direc iei pe care ar fi trebuit lovit prima bil pentru a ajunge la imaginea celei de a doua bile din acest dreptunghi. Apoi, pentru fiecare dreptunghi pentru care |x| + |y| = N, dac direc ia asociat lui nu este n structura de date, increment m num rul de solu ii. Aceast rezolvare are complexitatea O(N2 log N) pentru c normalizarea unei direc ii implic folosirea algoritmului lui Euclid ce are complexitate O(log N).

Aplica ia 8: PuckShot (TopCoder)


Un juc tor de hockey stngaci are o mi care n care de la mijlocul terenului izbe te pucul de marginea terenului care apoi ntr n spa iul por ii. Terenul este de 3000 de centimetri l ime. Distan a ntre linia de mijloc i linia de gol este de 1733 de centimetri. Poarta este centrat pe linia de gol i are dimensiunea de 183 de centimetri. Cnd juc torul love te, puc-ul se va lovi de marginea terenului i apoi va rico a simetric n poart . Pucul i stlpii por ii vor fi considerate puncte. Pe ghea vor fi cel mult nou juc tori care vor fi modela i ca segmente orizontale de

lungime 50 centimetri. Pentru ca lovitura s aib succes, traiectoria ei nu trebuie s intersecteze niciun juc tor. Pentru simplitate, pute i presupune c terenul este perfect dreptunghiular. Se cere unghiul format de lovitura juc torului cu linia de mijloc, astfel ca lovitura s fie cu succes i pucul s intre n poart i s fie ct mai apropiat de stlpul drept al por ii. Structura unui teren de hockey este prezentat n urm toarea figur :

Rezolvare:

O rezolvare posibil ar fi s pornim cu o lovitur de un unghi fixat i s vedem dac ajunge n poart , iar apoi s cre tem unghiul loviturii pu in cte pu in. Prin folosirea unor considera ii de simetrie putem rezolva problema mai u or i mai eficient. Oglindim terenul mpreun cu to i juc torii. Astfel, transform m lovitura din dou segmente n unul singur care trece prin dreapta de simetrie. Acum, lu m fiecare punct lateral al juc torilor, fiecare punct lateral al imaginii reflectate ale juc torilor i punctele por ii reflectate, i unim aceste puncte cu punctul de unde juc torul va lovi pucul. Verific m care dintre aceste drepte dac sunt rotite foarte pu in la dreapta sau la stnga intersecteaz imaginea por ii reflectate i nu intersecteaz segmentele ce reprezint juc torii sau imaginea lor reflectat . Astfel, solu ia noastr are complexitatea O(N2) unde N este num rul de juc tori, pentru c pentru fiecare dintre cele 4N + 2 raze trebuie s verific m intersec ia cu 2N + 1 segmente. Pe acest idee putem realiza o solu ie n O(N log N) folosind o linie de baleiere care trece prin punctul ini ial si se mi c circular n jurul lui.

Aplica ia 9: Poligon 2 (infoarena)

Se dau coordonatele mijloacelor laturilor unui poligon nu neap rat convex i care se poate autointersecta. Se cere s se determine coordonatele vrfurilor poligonului.

Rezolvare:
Consider m c poligonul are N vrfuri. Rezolv m problema nti pentru N par. Lu m primul vrf al poligonului, i i determin m simetricul fa de primul mijloc de latur . Astfel g sim al doilea vrf. Dac lu m al doilea vrf printr-o simetrie l ob inem pe al treilea .a.m.d. Deci prin N simetrii ob inem din nou primul punct. Cum N este par fiecare dou simetrii compuse sunt o transla ie, deci avem o serie de transla ii care se compun ntr-una care duce punctul ini ial n punctul ini ial. A a cum am vazut la partea teoretic transla ia are un punct fix doar dac ea e transla ie trivial . Transla ia fiind trivial , putem porni cu orice punct din plan i s ob inem celelalte N + 1 puncte din poligon ca i rezultate ale simetriilor aplicate succesiv. n cazul n care N e impar transformarea explicat mai sus are ca rezultat compunerea ntre o transla ie i o simetrie, compunere care a a cum pute i verifica are ca rezultat o simetrie de alt centru. Dar punctul ini ial este transformat n acela i punct, deci el trebuie s fie centrul de simetrie al transform rii compuse. i, atunci lu m un punct oarecare P n plan, efectu m cele N transform ri asupra lui i ob inem un punct P. Primul punct al poligonului va fi mijlocul acestui segment.

Aplica ia 10: Dmg (Stelele Informaticii 2005, infoarena)


Se dau N (1 N 1500) puncte de coordonate ntregi. S se determine num rul de axe de simetrie al sistemului de puncte.

Rezolvare:
Axele de simetrie ale sistemului de puncte trebuie s fie i axe de simetrie pentru poligonul ce reprezint nf ur toarea convex a acestor puncte. Dac vrem s g sim axele de simetrie ale unui poligon convex, observ m c dac el are num r par de vrfuri, atunci trebuie ca acestea sau s fie mediatoare pentru o latur a poligonului, sau s treac prin dou vrfuri. Dac el are num r impar de laturi atunci axele de simetrie trebuie s fie mediatoare pentru o latur i s treac printr-un punct al poligonului. Astfel, dup calcularea n O(N log N) a nf ur torii convexe, putem afla n timp O(N) care sunt candidate la axa de simetrie a poligonului. Verificarea faptului dac o dreapt este ax de simetrie pentru un set de puncte o putem face n O(N) folosindu-ne de o tabel de dispersie. Algoritmul de determinare a axelor de simetrie are complexitatea final O(N2).

Aplica ia 11 (ONM 1997, clasa a VIII-a)


Se d un paralelipiped ABCDEFGH, cu AB = 5, BC = 4, AE = 3. Se cere s determin m pozi ia unui punct M ce apar ine segmentului BF cu proprietatea c suma AM + MG este minim .

Rezolvare

Pentru aceast problem ne putem imagina o solu ie analitic n care vrem s minimiz m func ia AM + MG care depinde de coordonata y, dar o asemenea rezolvare nu ar fi fost accesibil unui elev de clasa a VIII-a. O solu ie elegant i simpl este urm toarea. Desf ur m n plan fe ele ABFE i BCGD. Astfel se formeaz dreptunghiul ACGE, unde AC = 9 i AE = 3. Acum este clar c punctul M trebuie s fie intersec ia diagonalei AG cu FB. De aici putem g si foarte u or c BM = 5/3.

Aplica ia 12 (TopCoder)
Pe partea frontal a unui zgrie-nor foarte nalt, ce are forma unui paralelipiped, cu baza un p trat de latura 200 de metri, este situat un p ianjen. Acesta vrea s m nnce o musc situat pe fa a din dreapta a zgrie-norului. tiind coordonatele p ianjenului i ale mu tei vi se cere s determina i drumul cel mai scurt pe care l poate face p ianjenul ca s m nnce musca iar ntreaga deplasare a lui s fie pe suprafa a zgrie-norului (coordonatele gng niilor se m soar relativ la col ul stnga sus al fe ei pe care se afl fiecare).

Rezolvare:
Desf ur m paralelipipedul n toate modurile posibile (a a cum vedem n figur ) i alegem dintre toate drumurile solu ia optim .

Aplica ia 13

Se d un triunghi ABC i trei drepte d1, d2 i d3 care nu sunt paralele ntre ele dou cte dou . Se cere s se determine un triunghi nscris n triunghiul ABC ce are laturile paralele cu dreptele d1, d2 respectiv d3.

Rezolvare:
Construim un triunghi DEF ce are laturile paralele cu dreptele d1, d2 i d3, iar punctul E apar ine semidreptei [AC i punctul F apar ine semidreptei [AB. Acum fix m un punct D n intersec ia lui AD cu BC i n acest punct ducem dou drepte paralele cu dreptele d1 i d2. Aceste drepte vor intersecta laturile triunghiului n punctele F i E. n omotetia de centru A i raport AD / AD triunghiul DEF se transform n DEF, care este un triunghi ce respect condi ia din enun .

Aplica ia 14: Triangular Square (UVa)


Se d un triunghi ABC. Vrem s g sim aria maxim a unui p trat situat n ntregime n interiorul triunghiului. n imagine avem un p trat n interiorul unui triunghi, dar acesta nu este de arie maxim . De exemplu ntr-un triunghi cu laturile de dimensiuni 6, 6 i 6, aria maxim este 7.754051.

Rezolvare:
Pornim de la presupunerea intuitiv c cel mai mare p trat ce se poate plasa n interiorul unui triunghi trebuie s aib una din laturi pe o latur a triunghiului. Astfel, pentru a determina p tratul de arie maxim avem trei posibilit i de a ezare pe laturile triunghiului. Pentru o a ezare fixat putem afla u or p tratul maxim din interiorul triunghiului ce are dou varfuri pe latura BC. O modalitate ar fi s desen m un p trat MNPQ ce are punctele Q i P pe semidreapta [BC i punctul M pe semidreapta [BA. Dup care, lu m punctul N ca intersec ie a dreptei BN cu AC. G sim p tratul MNPQ ca fiind omoteticul p tratului MNPQ dup omotetia de centru B i raport BN / BN. Alt modalitate de construc ie a p tratului ar fi cea prezentat n a doua figur , adic : se construie te n exterior, pe latura BC a triunghiului, un p trat BCQP, se determin punctele P i Q ca i intersec ii al segmentului AQ cu BC i al segmentului AP cu BC. P tratul MNPQ va fi omoteticul p tratului BCPQ, dup omotetia de centru A i raport QP / BC.

Aplica ia 15: Arhipelago (SGU)

Se dau coordonatele a dou vrfuri ale unui poligon regulat de N laturi. Se cere, dac ti i pe N, cele dou perechi de coordonate i N1, N2 indicii celor dou puncte pe poligon, s determina i coordonatele tuturor celor N vrfuri.

Rezolvare:
Fie O centrul cercului circumscris poligonului regulat. Dac not m A i B cele dou puncte, atunci putem u or s determin m m sura unghiului AOB pe care o not m cu alfa. Triunghiul AOB este isoscel i tim c are la baz unghiuri de m sur beta = (180 alfa) / 2. Pentru a determina punctul O vom roti dreapta AB n jurul lui A dup un unghi beta, i vom roti dreapta AB n jurul lui B dup un unghi beta. Cele dou drepte ce rezult din cele dou rota ii se vor intersecta n punctul O. Astfel, am g sit centrul cercului circumscris poligonului, pentru a g si punctele lui i aplic m vrfului A rota iile de centru O i unghiuri 360K/N unde K ia toate valorile naturale de la 1 la N.

Aplica ia 16: Geometrical dreams (Timus)


Pe laturile unui poligon A1A2...AN (vrfurile Ai sunt numerotate n ordine trigonometric ), se construiesc n exterior triunghiurile isoscele AiMiAi+1, iar unghiul AiMiAi+1 = alfai (aici AN+1 = A1). Suma m surilor unghiurilor alfai nu este multiplu de 360 de grade. Dac ni se dau N 50, coordonatele punctelor Mi i unghiurile alfai, scrie i un program care ne d coordonatele vrfurilor poligonului.

Rezolvare:
A a cum am v zut n partea teoretic , o compunere de mai multe rota ii are ca rezultat o rota ie al c rei unghi este suma unghiurilor rota iilor par iale. Dac pornim cu punctul A1 i l rotim n jurul lui M1 cu un unghi alfa1, dup care lu m punctul rezultat i l rotim n jurul lui M2 cu unghiul alfa2 i a a mai departe pn cnd am rotit pe A1 n punctelor M1, M2, ... Mn. Efectund ace ti pa i vom ob ine pe rnd vrfurile poligonului, iar la sfr it A1 va ajunge din nou n pozi ia ini ial . Acest procedeu este de fapt o serie de rota ii, i vedem c aplicarea lui asupra lui A1 l las neschimbat. Cum suma m surilor unghiurilor de rota ie nu este multiplu de 360 de grade, nseamn c rota ia nu este trivial , iar o rota ie netrivial are ca punct fix doar centrul ei. A adar putem lua un punct oarecare n plan asupra c ruia aplic m procedeul i vom ob ine imaginea lui. Folosind aceste dou puncte i alfa = suma de alfai ca unghi de rota ie, putem determina centrul A1 de rota ie. Dup care efectund transform rile asupra lui A1 ob inem celelalte puncte ale poligonului.

Aplica ia 17: Texan (Baraj ONI, 2005)

Se d un poligon convex de N vrfuri (3 N 700). Se cere s se determine un triunghi echilateral cu vrfurile apar innd laturilor poligonului convex.

Rezolvare:
Lu m un punct O pe o latur a poligonului. Rotim ntreg poligonul n jurul acestui punct 60 de grade n sens trigonometric. Poligonul rotit va intersecta poligonul ini ial ntr-un nou punct B. Acest punct B l rotim n jurul lui O cu 60 de grade n sens orar. Rezultatul este un punct B care evident apar ine poligonului ini ial. Acum triunghiul OBB este echilateral pentru c OB = OB i m sura unghiului BOB este de 60 de grade. Men ion m c aceasta a fost una dintre cele mai dure probleme de la selec ia lotului de anul acesta. O rezolvare de complexitate O(N2) a fost de ajuns pentru punctajul maxim, dar facem observa ia c intersec ia a dou poligoane convexe se poate face n complexitate O(N).

Aplica ia 18: dotNet (.campion, 2004)


Se dau N puncte n planul euclidian prin coordonatele lor, numere ntregi. Apoi se efectueaz M opera ii asupra tuturor punctelor, ntr-o ordine dat (1 N 100 000, 0 M 10 000). O opera ie poate fi de dou tipuri: de transla ie sau de rota ie. ntr-o opera ie de rota ie, punctele sunt rotite n jurul originii cu un anumit num r de grade n sens trigonometric. ntr-o opera ie de transla ie, originea este mutat n alt punct relativ la originea curent i coordonatele celorlalte puncte sunt modificate astfel nct s reprezinte acelea i puncte relativ la noua origine. Scrie i un program care calculeaz coordonatele tuturor punctelor dup cele M opera ii.

Rezolvare:
matrici. Dac vrem s rotim punctul Folosim scrierea opera iilor de transla ie si rota ie ca produs de (x, y) n jurul punctului de coordonate (0, 0) dup un unghi atunci putem scrie:

Iar transla ia o putem scrie ca:

Astfel transformarea pentru un punct devine un produs de matrici care la sfr it se nmul e te cu un vector ce reprezint coordonatele punctului pe care vrem s l transform m. Pentru c transformarea compus este aceea i pentru fiecare dintre cele N puncte, determin m matricea care o reprezint o singur dat i apoi o putem aplica pe rnd fiec rui punct. Algoritmul are complexitatea O(N + M). Men ion m c o problem similar apare pe SGU sub numele de wizards, diferen a fiind c acolo opera iile sunt n spa iul tridimensional, dar rezolvarea este aproape identic .

Bibliografie
1. Nicolescu, Boskoff, Probleme practice de geometrie, Ed. Tehnic , Bucure ti, 1990

S-ar putea să vă placă și