PROGRAMMEERIMISOLÜMPIAADI KOOLIVOOR 16.12.1997 NOOREM RÜHM (kuni 10. klass) 1. MUUSEUMI KÜLASTAJAD 30 punkti 5 sekundit Muuseumis registreeriti kogu päeva jooksul kõigi külastajate saabumise ja lahkumise ajad minutilise täpsusega. Koostada programm, mis leiaks maksimaalse ühel ajahetkel muuseumis viibinud külastajate arvu. Sisend: Tekstifaili INPUT.TXT esimesel real on päeva jooksul muuseumis käinud külastajate arv N (1 <= N <= 10000) ja järgmisel N real on igaühel 2 tühikutega eraldatud neljakohalist täisarvu. Esimene arv näitab külastaja saabumise ja teine lahkumise aega. Iga arvu kaks esimest numbrit tähistavad tunde ja kaks viimast minuteid. Ükski külastaja ei saabu täpselt samal ajal kui mõni teine külastaja lahkub. Väljund: Tekstifaili OUTPUT.TXT väljastada maksimaalne ühel hetkel muuseumis viibinud külastajate arv. Näide: INPUT.TXT OUTPUT.TXT 3 2 1000 1030 1010 1050 1040 1120 2. TANTSUPAARID 40 punkti 5 sekundit Pingil istuvad läbisegi poisid ja tüdrukud. Poiss võib kutsuda tantsima ainult oma kõrval istuva tüdruku. Koostada programm, mis leiaks maksimaalse võimaliku tantsupaaride arvu. Sisend: Tekstifaili INPUT.TXT esimesel real on tähtedest P ja T koosnev sõne (maksimaalne pikkus 20 tähte). Täht P tähistab poissi ja T tüdrukut. Väljund: Tekstifaili OUTPUT.TXT kirjutada, mitu paari on võimalik moodustada. Näide: INPUT.TXT OUTPUT.TXT PTPPTTPT 3 3. RISTKÜLIKUD 30 punkti 5 sekundit Koostada programm, mis leiaks kahe ristküliku vastastikuse asendi (ühisosata, lõikuvad, üks teise sees). Ristkülikud on antud kahe vastastipu koordinaatidega ja ristkülikute küljed on paralleelsed koordinaattelgedega. Arvestamata võib jätta juhud, kui ristkülikutel on ühine külg või ühine nurk. Sisend: Tekstifaili INPUT.TXT esimesel real on tühikutega eraldatult esimese ristküliku kahe vastastipu reaalarvulised koordinaadid (X1, Y1, X2, Y2, |X1| < 1000, |Y1| < 1000, |X2| < 1000, |Y2| < 1000), teisel real on samad andmed teise ristküliku kohta. Väljund: Tekstifaili OUTPUT.TXT väljastada ristkülikute vastastikust asendit kirjeldav tekst (ÜHISOSATA, LÕIKUVAD või ÜKS TEISE SEES). Näide: INPUT.TXT OUTPUT.TXT 2.0 2.0 1.0 0.0 LÕIKUVAD 1.0 2.0 0.0 0.0 VANEM RÜHM (11.-12. klass) 1. MUUSEUMI KÜLASTAJAD 30 punkti 5 sekundit Muuseumis registreeriti kogu päeva jooksul kõigi külastajate saabumise ja lahkumise ajad minutilise täpsusega. Koostada programm, mis leiaks, millal muuseumis viibis maksimaalne arv külastajaid. Sisend: Tekstifaili INPUT.TXT esimesel real on päeva jooksul muuseumis käinud külastajate arv N (1 <= N <= 10000) ja järgmisel N real on igaühel 2 tühikutega eraldatud neljakohalist täisarvu. Esimene arv näitab külastaja saabumise ja teine lahkumise aega. Iga arvu kaks esimest numbrit tähistavad tunde ja kaks viimast minuteid. Kui üks külastaja saabub täpselt teise lahkumise ajal, siis lugeda, et sellel hetkel olid muuseumis mõlemad. Väljund: Tekstifaili OUTPUT.TXT esimesele reale väljastada maksimaalne ühel hetkel muuseumis viibinud külastajate arv ja järgmistele ridadele kõik ajavahemikud, mil muuseumis oli maksimaalne arv külastajaid. Näide: INPUT.TXT OUTPUT.TXT 3 2 1000 1030 1010 1030 1010 1050 1040 1050 1040 1120 2. TANTSUPAARID 40 punkti 5 sekundit Ümber ümmarguse laua istuvad läbisegi poisid ja tüdrukud. Poiss võib kutsuda tantsima ainult oma kõrval istuva tüdruku. Koostada programm, mis leiaks maksimaalse võimaliku tantsupaaride arvu. Sisend: Tekstifaili INPUT.TXT esimesel real on tähtedest P ja T koosnev sõne (maksimaalne pikkus 20 tähte). Täht P tähistab poissi ja T tüdrukut. Väljund: Tekstifaili OUTPUT.TXT kirjutada, mitu paari on võimalik moodustada. Näide: INPUT.TXT OUTPUT.TXT PTPPTTPT 4 3. RISTKÜLIKUD 30 punkti 5 sekundit Koostada programm, mis leiaks kahe ristküliku ühisosa pindala. Ristkülikud on antud kahe vastastipu koordinaatidega ja ristkülikute küljed on paralleelsed koordinaattelgedega. Sisend: Tekstifaili INPUT.TXT esimesel real on tühikutega eraldatult esimese ristküliku kahe vastastipu reaalarvulised koordinaadid (X1, Y1, X2, Y2, |X1| < 1000, |Y1| < 1000, |X2| < 1000, |Y2| < 1000), teisel real on samad andmed teise ristküliku kohta. Väljund: Tekstifaili OUTPUT.TXT väljastada ristkülikute ühisosa pindala täpsusega 2 kohta peale koma. Näide: INPUT.TXT OUTPUT.TXT 2.0 2.0 1.0 0.0 1.00 1.0 2.0 0.0 0.0