Nivelul concursului: Național
http://oni2015.isj-db.ro/ http://onigim2015.cngmm.ro/
Grupe
Clasa a V-a Clasa a VI-a Clasa VII-a Clasa VIII-a Clasa a IX-a Clasa a X-a Clasele XI-XII Juniori#1226
Nebuni
Pe o tablă de şah cu N
linii şi N
coloane sunt plasaţi M
nebuni. După cum se ştie de la jocul de şah, nebunii atacă doar în diagonală.
O poziţie de pe tabla de şah este considerată sigură dacă nu este atacată de niciun nebun aflat pe tablă.
Scrieţi un program care să determine numărul de poziţii sigure de pe tabla de şah.
ONI GIM 2015, Baraj
#1228
SSK
Manole a învățat de la profesorul de informatică cum să calculeze suma elementelor oricărei matrice A
cu N
linii și M
coloane. El numerotează liniile de la 1
la N
și coloanele de la 1
la M
. Mai mult, Manole fiind extrem de pasionat de numere, va calcula sumele tuturor subtablourilor din cadrul matricei A
. Șirul acestor sume îl scrie pe o hârtie, după ce l-a ordonat crescător.
Prin subtablou el înțelege o zonă dreptunghiulară din matricea A
, identificată prin colțul stânga-sus (x1,y1)
şi colţul dreapta-jos (x2,y2)
, elementele subtabloului fiind toate elementele A[i][j]
pentru care x1≤i≤x2
şi y1≤j≤y2
. Suma unui subtablou este suma tuturor elementelor sale.
ONI GIM 2015, Baraj
#1227
Spioni
Gigel si Ionel se joacă de-a spionii! De aceea ei imaginează o modalitate de a codifica un mesaj astfel încât nimeni să nu îl poată descifra. Toate mesajele lor au lungimea o putere a lui 2
. Ei numerotează literele mesajului începând cu 1
. Apoi separă literele în două categorii: cele cu număr de ordine impar în stânga, cele cu număr de ordine par în dreapta, păstrând ordinea lor. Procedeul continuă pentru fiecare grupă nou rezultată începând cu cea din stânga, până când fiecare grupă obţinută conţine un singur caracter. După terminarea operaţiilor alipesc grupele de câte o literă rezultate, începând de la stânga spre dreapta şi obţin mesajul codificat.
De exemplu pentru mesajul MESAJNECODIFICAT
procedează astfel:
1. numerotează
MESAJNECODIFICAT 123456789...
2. separă
MSJEOIIA EANCDFCT apoi repetă paşii 1 şi 2 pentru 12345678 12345678 fiecare grupă rezultată MJOI SEIA ENDC ACFT 1234 1234 1234 1234 MO JI SI EA ED NC AF CT 12 12 12 12 12 12 12 12 M O J I S I E A E D N C A F C T 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2
până se obţine un singur caracter în fiecare grupă şi alipind literele de la stânga spre dreapta rezultă mesajul codificat: MOJISIEAEDNCAFCT
Scrieţi un program care să rezolve următoarele două cerinţe:
ONI GIM 2015, Baraj