Sm. takzhe:
|
Zadachi gorodskoj olimpiady SPb 1996 godaRajonnyj teoreticheskij tur (1-yj tur)
Gorodskoj teoreticheskij tur (2-oj tur)
Gorodskoj prakticheskij tur (3-yj tur)
Rajonnyj teoreticheskij tur (1-yj tur)
Vo vhodnom potoke raspolozhena stroka, costojaschaja iz nulej i edinic. Trebuetsja najti dlinu naibol'shej podstroki vida ABCD, gde
A - nepreryvnaja cepochka nulej (ne menee 6 simvolov); Na vhod programme podaetsja posledovatel'nost' simvolov, sostavljajuschih stroku. Priznakom konca sluzhit simvol "." (tochka). Dlina stroki zaranee ne opredelena. Stroka mozhet byt' takoj dlinnoj, chto ne pomestitsja v pamjat' vashego komp'jutera. Programma dolzhna prochitat' stroku rovno 1 raz. Naprimer, dlja stroki "0100100000001001111111110." otvetom budet 19.
Napishite programmu, kotoraja vyvodit na graficheskij jekran derevo, izobrazhennoe na risunke. Ugol mezhdu paroj ishodjaschih vetok raven 90 gradusov. Kazhdaja vetka (iskljuchaja stvol) imeet dlinu, ravnuju 0.56 ot dliny vetki, iz kotoroj ona rastet. Vysota dereva sostavljaet 10 vetok (vkljuchaja stvol). Schitajte, chto razmery graficheskogo jekrana vashego komp'jutera 640 tochek po gorizontali i 480 tochek po vertikali. V levom verhnem uglu jekrana raspolozhena tochka s koordinatami (0,0). Schitajte, chto v vashem jazyke programmirovanija est' operator LINE (x1,y1,x2,y2), kotoryj izobrazhaet na jekrane otrezok, soedinjajuschij tochki s koordinatami (x1,y1) i (x2,y2).
Otrezok chislovoj osi ot 0 do 1.000.000.000 vykrasili v belyj cvet. Zatem otdel'nye uchastki (mezhdu tochkami s celymi koordinatami) perekrashivali v belyj i chernyj cveta. Vsego bylo vypolneno N (1< N < 100) perekrashivanij. Napishite programmu, kotoraja po zadannoj posledovatel'nosti perekrashivanij nahodit granicy samogo dlinnogo belogo uchastka. Naprimer, dlja N=4 i posledovatel'nosti: 1- 999999997 v chernyj, 40-300 v belyj, 300-634 v belyj, 43-47 v chernyj, otvetom budet uchastok (47-634).
Imeetsja kletchatoe pole razmerom MxN kletok (0< M,N< =20). V raznyh kletkah polja nahodjatsja dva malen'kih sharika, kotorye mogut peremeschajutsja po polju po diagonali. Za odin shag kazhdyj sharik peremeschaetsja na odnu iz 4-h sosednih diagonal'nyh kletok. Pri soudarenii s granicej polja sharik menjaet svoe napravlenie, otrazhajas' kak luch sveta. Pri popadanii v ugol sharik menjaet napravlenie svoego dvizhenija na protivopolozhnoe. Napishite programmu, kotoraja vvodit nachal'nye koordinaty, napravlenija skorostej sharikov i opredeljaet cherez skol'ko shagov shariki stolknutsja (okazhutsja v odnoj kletki). Libo soobschaet, chto vstrecha nevozmozhna.
Po zadannomu celomu A (0< A< 1.000.000.000) najti minimal'noe N, pri kotorom N**N (N v stepeni N) budet delit'sja na A bez ostatka. Napishite programmu, kotoraja budet rabotat' jeffektivnee, chem prostoj perebor vseh znachenij X. Naprimer, dlja A=40 otvetom budet N=10.
V soobschenii, sostojaschem iz odnih russkih bukv i probelov, kazhduju bukvu zamenili ee porjadkovym nomerom v russkom alfavite ('A' - 1, 'B' - 2, ..., 'Ja' - 33), a simvol probela zamenili nulem. Napishite programmu, kotoraja vvodit poluchivshujusja posledovatel'nost' cifr (ne bolee 30) i nahodit kolichestvo ishodnyh soobschenij, iz kotoryh mogla poluchit'sja zadannaja posledovatel'nost'. Naprimer, dlja posledovatel'nosti "1025" kolichestvo vozmozhnyh ishodnyh soobschenij - 4.
Zajac stoit v centre bol'shogo katka i poet svoju ljubimuju pesnju v igrushechnyj mikrofon. Ot mikrofona tjanetsja dostatochno dlinnyj shnur, konec kotorogo nahoditsja v rukah u Volka. Pytajas' vospol'zovat'sja slozhivshejsja situaciej, Volk hochet nezametno zamotat' zajca jetim shnurom. Dlja jetogo on kataetsja vokrug zajca na kon'kah i postepenno ego zamatyvaet. Napishite programmu, kotoraja vvodit put' Volka - lomanuju, zadannuju posledovatel'nym perechisleniem koordinat vershin i opredeljaet na skol'ko polnyh oborotov Volk zamotaet zajca. Uchtite, chto vo Volk vo vremja dvizhenija mozhet ne tol'ko zamatyvat' zajca, no i razmatyvat'. Koordinaty predstavljajutsja veschestvennymi chislami. Zajac stoit v tochke s koordinatami (0,0).
Dve odinakovye shesterenki s N (N<= 12) zub'jami krasjatsja v dva cveta, belyj i chernyj, kazhdyj zubec v svoj cvet. Napishite programmu, kotoraja dlja zadannomu N vyvodit vse sposoby raskraski shesterenok, kotorye nel'zja sovmestit' vrascheniem. Raskraski, kotorye poluchajutsja drug iz druga vrascheniem i obmenom shesterenok schitajutsja odinakovymi. Na risunke pokazany tri raskrashennyh shesterenki s 11 zub'jami. Raskraska 2 sovmeschaetsja s raskraskoj 1, a raskraska 3 - net. Naprimer, dlja N=2 vse sposoby raskraski sledujuschie (B - belyj cvet, Ch - chernyj). BB, BCh BB, ChCh BCh, ChCh Gorodskoj teoreticheskij tur (2-oj tur)
Imeetsja million razlichnyh natural'nyh chisel, ne prevoshodjaschih 1.000.000.000 (odnogo milliarda). Programma mozhet ih poluchit', vypolniv snachala proceduru RESET, a zatem million raz povtorjaja proceduru GETNEXT, kotoraja vyrabatyvaet sledujuschee chislo. Napishite programmu, kotoraja nahodit naimen'shee natural'noe chislo, ne vkljuchennoe v jetot nabor chisel. Proceduru RESET nel'zja vyzvat' bol'she chetyreh raz i nel'zja zapominat' v pamjati komp'jutera bolee 200 chisel.
Vy znaete, chto kletki shahmatnoj doski oboznachajutsja latinskimi bukvami ot A do H po vertikali i ciframi ot 1 do 8 po gorizontali (ot A1 v levom nizhnem uglu do H8 v pravom verhnem). V kazhdoj kletke soderzhitsja stroka odnogo iz treh tipov: pustaja stroka, desjatichnaja zapis' polozhitel'nogo chisla ili summa nazvanij dvuh ili bolee kletok. Na risunke priveden primer zapolnenija doski (ostal'nye kletki pustye). Vychislenie tablicy zakljuchaetsja v reshenii sistemy uravnenij, v kotoroj peremennymi javljajutsja znachenija kletok. Dlja privedennogo primera reshenie takoj sistemy sledujuschee: A7=32, B1=16, C2=48, F4=64, E6=80. Napishite programmu, kotoraja vychisljaet zadannuju tablicu, libo opredeljaet, chto jeto nevozmozhno.
Nomer bankovskogo scheta sostoit iz devjati cifr, predstavlennyh 7-segmentnym kodom. Na risunke privoditsja izobrazhenie 7-segmentnogo koda dlja cifry 6. Pri avtomaticheskom schityvanii nomera scheta mogut voznikat' oshibki, t.e. nekotorye segmenty mogut ischezat', a nekotorye - pojavljat'sja. Trebuetsja vosstanovit' prochitannyj nomer bankovskogo scheta, esli izvestno, chto
Naprimer, dlja nomera scheta programma dolzhna vyvesti 123456789. A dlja nomera scheta vyvesti soobschenie "vosstanovlenie nevozmozhno".
Nizhe priveden fragment programmy na jazyke BASTINDA. Tip dannyh Dlinnoe opredeljaet neotricatel'noe 100-znachnoe desjatichnoe chislo. Procedura Slozhit' skladyvaet dva chisla A i B tipa Dlinnoe i zapisyvaet rezul'tat v V. Vstav'te v tekst procedury Slozhit' dva simvola i zamenite odin tak, chtoby vmesto slozhenija ona vypolnjala vychitanie, esli izvestno, chto A(B. Pri vstavke chast' stroki sdvigaetsja vpravo, a na osvobodivsheesja mesto zapisyvaetsja vstavljaemyj simvol. Obosnujte svoe reshenie.
Gorodskoj prakticheskij tur (3-ij tur)Usl. oboznachenija: ZL - zamknutaja lomanaja bez samoperesechenij i samokasanij, zven'ja kotoroj parallel'ny osjam koordinat. Lomanaja zadaetsja perechisleniem koordinat vershin v porjadke obhoda po chasovoj strelke, pervaja i poslednjaja vershiny sovpadajut. Koordinaty vershin - celye chisla. Lomanaja soderzhit ne bolee 100 zven'ev. Lomanaja ne soderzhit posledovatel'nyh parallel'nyh zven'ev.
Zadana ZL A i celoe chislo K. Trebuetsja najti ZL B, imejuschuju minimal'no vozmozhnuju ploschad' pri odnovremennom vypolnenii sledujuschih uslovij:
Vo vhodnom fajle soderzhitsja opisanie lomanoj i chislo K. Rezul'tat raboty vyvesti odnovremenno v fajl OUTPUT.TXT i na graficheskij jekran. V vyhodnom fajle lomnaja zadaetsja takzhe, kak vo vhodnyh dannyh. Na graficheskom jekrane izobrazite lomnuju A belym cvetom, a lomnuju B - zelenym. Vasha programma dolzhna vypolnit' podhodjaschee masshtabirovanie i centrovku izobrazhenija. Primer fajla ishodnyh dannyh: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 13 Primer vyhodnogo fajla OUTPUT.TXT dlja privedennogo primera: -3 -13 -3 33 53 33 -3 -13
Zadana ZL A i celoe chislo K. Trebuetsja najti ZL B, imejuschuju maksimal'no vozmozhnuju ploschad' pri odnovremennom vypolnenii sledujuschih uslovij:
Vo vhodnom fajle soderzhitsja opisanie lomanoj i chislo K. Rezul'tat raboty vyvesti odnovremenno v fajl OUTPUT.TXT i na graficheskij jekran. V vyhodnom fajle lomnaja zadaetsja takzhe, kak vo vhodnyh dannyh. Na graficheskom jekrane izobrazite lomnuju A belym cvetom, a lomnuju B - zelenym. Vasha programma dolzhna vypolnit' podhodjaschee masshtabirovanie i centrovku izobrazhenija. Primer fajla ishodnyh dannyh: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 5 Primer vyhodnogo fajla OUTPUT.TXT dlja privedennogo primera: 15 5 15 15 25 15 25 5 15 05
Zadana ZL A i tochka s celochislennymi koordinatami (x,y), ne lezhaschaja na lomanoj A. V tochke nahoditsja istochnik sveta, kotoryj osveschaet neposredstvenno vidimye iz nego uchastki lomanoj A. Trebuetsja najti osveschennye i neoseschennye uchastki lomanoj A. Rezul'tat raboty vyvesti odnovremenno v fajl OUTPUT.TXT i na graficheskij jekran. V fajl OUTPUT.TXT vyvesti tol'ko summarnuju dlinu vseh osveschennyh uchastkov. Na graficheskom jekrane izobrazite lomanuju A i tochku (x,y). Osveschennye uchastki lomanoj risujutsja belym cvetom, a neosveschennye - serym. Vasha programma dolzhna vypolnit' podhodjaschee masshtabirovanie i centrovku izobrazhenija. Primer fajla ishodnyh dannyh: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 35 5 Primer vyhodnogo fajla OUTPUT.TXT dlja privedennogo primera: 9 Sistema ocenok
|