Zadania drugiego etapu Konkursu Informatycznego dla gimnazjalistów LOGIA 08

Zadanie 1.

Alek i Olek postanowili rozegrać mecz rzucając kostkami do gry. Umówili się, że w każdej partii meczu każdy z nich rzuca kilkoma kostkami. Daną partię wygrywa ten z nich, który uzyska większą sumę oczek. Jeśli uzyskają taką samą sumę, to partia kończy się remisem. Cały mecz wygrywa ten z chłopców, który wygra więcej partii. Jeśli Alek i Olek wygrają taką samą liczbę partii, to mecz kończy się remisem. Ela, młodsza siostra Alka, notowała na kartce wszystkie wyniki rzutów wykonywanych przez chłopców. Pomóż Eli wskazać zwycięzcę meczu.

Napisz funkcję MECZ :wyniki :n, której wynikiem będzie imię chłopca, który wygrał mecz lub słowo "Remis. Dana :wyniki określa liczby oczek na kostkach podczas kolejnych partii, w obrębie jednej partii najpierw są wyniki Alka, potem Olka. Dana :n określa iloma kostkami chłopcy rzucali. Zakładamy, że chłopcy rzucali nie więcej niż 6 kostkami i rozegrali nie więcej niż 10 partii.

Wynikiem MECZ "1231 1 jest "Remis - chłopcy rozegrali dwie partie rzucając jedną kostką, pierwszą partię wygrał Olek (2 oczka wobec 1 oczka Alka), drugą Alek.
Wynikiem MECZ "213345325166 2 jest "Olek - chłopcy rozegrali 3 partie rzucając dwiema kostkami, Olek wygrał dwie partie (pierwszą 6 do 3 i trzecią 12 do 6), drugą przegrał (5 do 9).

Zadanie 2.

Jasia fascynują liczby pierwsze i doskonałe. Liczba doskonała to taka liczba naturalna, która jest równa sumie swoich podzielników właściwych, czyli podzielników mniejszych od tej liczby. Na przykład 28 jest liczbą doskonałą, bo 28=1+2+4+7+14. Liczb doskonałych jest niewiele, do 10000 tylko cztery (6, 28, 496 i 8128). Jaś postanowił "złagodzić" definicję liczby doskonałej i wymyślił liczby "prawie doskonałe", tj. takie, które są wielokrotnością sumy swoich podzielników właściwych. Jaś zastanawiał się, ile jest takich liczb. Pomóż Jasiowi policzyć, ile takich liczb jest w zadanym przedziale.

Napisz funkcję ILEPD :m :n, której wynikiem jest liczba liczb "prawie doskonałych" nie mniejszych niż :m i nie większych niż :n. Dane :m:n to liczby całkowite dodatnie mniejsze od 10000. Zakładamy, że :m nie przekracza :n. Postaraj się napisać funkcję ILEPD w taki sposób, aby Jasio nie czekał długo na wynik.

Wynikiem ILEPD 10 100 jest 22.

Zadanie 3.

Napisz funkcję MAXX :słowo, gdzie :słowo jest dowolnym niepustym słowem składającym się jedynie z małych liter alfabetu łacińskiego. Wynikiem funkcji jest najdłuższe podsłowo (fragment słowa - ciąg kolejnych znaków), które rozpoczyna się i kończy się tym samym znakiem. Jeśli w danym słowie jest wiele takich najdłuższych podsłów, to wynikiem jest dowolne z nich.

Wynikiem MAXX "bbbaaubueytwyetrywax jest "aaubueytwyetrywa.
Wynikiem MAXX "abcdefghij jest dowolny znak danego słowa.