Lista de probleme 3

#4134 raza1

Pe planeta Quadratia, locuitorii folosesc forme pătrate în tot ceea ce construiesc. Ei au trimis pe solul planetei $N$ mașini speciale de apărare, numite rovere, care se deplasează pe traiectorii ce descriu pătrate. Harta planetei poate fi privită ca un tablou bidimensional cu număr infinit de linii și coloane, numerotarea acestora începând cu 1. Scrieţi un program care să rezolve următoarele cerințe:

  • Determină numărul roverelor a căror traiectorie se intersectează cu diagonala principală a tabloului ce descrie harta.
  • Determină numărul maxim de rovere, care pot fi distruse simultan, într-o singură secundă, înainte de trecerea celor S secunde, precum și secunda minimă în care se poate realiza acest lucru.

O companie de transport cu microbuze din județul Iași a adoptat o strategie proprie pentru rutele din județ. Scrieţi un program care să rezolve următoarele cerințe:

  • determină preţul minim al unui set de bilete ce poate fi achiziționat pentru parcurgerea a exact N kilometri;
  • determină distanţele alese de Gigel, astfel încât preţul total al călătoriei să fie minim;
  • determină două seturi distincte de bilete pentru care prețul total al biletelor este același și este cel mai mare posibil. Pentru fiecare set nu este permisă alegerea mai multor bilete cu același preț și nu există două bilete cu același preț în ambele seturi.

#4135 text3

Alexandra citește un text format din litere mici și mari ale alfabetului englez și spații. Fiind interesată de criptografie, ea elimină toate spațiile și apoi încadrează literele, în ordinea în care acestea apar în text, într-un tablou bidimensional, în care numărul de linii este mai mic sau egal decât numărul de coloane. Întrucât pot exista mai multe moduri de încadrare a textului, Alexandra îl alege pe cel pentru care diferența absolută dintre numărul liniilor și al coloanelor tabloului este minimă.
1) Notând cu N numărul de linii și cu M numărul de coloane ale tabloul bidimensional obținut, afișați elementele acestuia pe primele N linii ale fișierului de ieșire, fiecare linie conținând exact M litere fără spații între ele. Afișarea se va face în ordinea crescătoare a indicilor liniilor și pe fiecare linie în ordinea crescătoare a indicilor coloanelor.
2) Determinați cel mai lung palindrom de pe o linie sau de pe o coloană a tabloului obținut. În cazul în care există mai multe palindromuri de aceeași lungime, se va afișa cel care este cel mai mare din punct de vedere lexicografic conform codului ASCII.
3) Determinați care este numărul maxim de elemente dintr-un subtablou dreptunghiular, ce conține doar vocale.

ONI 2022, clasa a VII-a