Lista de probleme 657

Filtrare

Dificultate

Operații intrare/ieșire


Etichete

Se dau două șiruri S1 si S2 formate doar cu litere mici. Numim subșir de lungime K al unui șir a un șir a' = ai1, ai2,…, aiK astfel încât să avem: i1 < i2 < ... < iK.
Să se determine lungimea maximă a unui subșir din S1, format prin concatenarea unor anagrame ale șirului S2. Dintre toate subșirurile cu lungime maximă se va determina cel care este cel mai mic lexicografic. Un șir de lungime na se consideră mai mic lexicografic decât un șir de lungime nb dacă există un indice i, astfel încât a1=b1, a2=b1, …, ai-1=bi-1 și ai<bi. Un șir a este anagrama unui șir b dacă sortându-le crescător pe fiecare se obțin două șiruri identice.

ONI 2018 clasa a X-a

#2465 agora

Prietenul nostru, Pit, se află în Grecia antică, în cea mai vestită piață publică. Considerăm că piața este un dreptunghi din plan, de dimensiuni X și Y. Dacă reprezentăm piața într-un reper cartezian xOy, aceasta are cele patru vârfuri în punctele de coordonate (0,0), (X,0), (X,Y) și (0,Y). În fiecare punct (a,b), cu a ∈ {1,...,X} și b ∈ {1,...,Y}, se află câte o tarabă care vinde echere. Prietenul nostru este afacerist și vrea să închirieze o parcelă de teren dreptunghiulară, având laturile paralele cu laturile pieței, iar cele patru vârfuri de coordonate numere naturale. Vârfurile parcelei se află în interiorul pieței sau pe laturile acesteia. În această parcelă, Pit vrea să cuprindă cât mai multe tarabe speciale, care au următoarele proprietăți:

  • distanta de la origine la tarabă este număr natural;
  • nu există nici o altă tarabă pe segmentul dintre origine și tarabă.

Cunoscându-se valorile X, Y și coordonatele (SXi, SYi) și (DXi, DYi) pentru Q parcele, unde 1 ≤ i ≤ Q, să se afle, pentru fiecare parcelă, care este numărul de tarabe speciale pe care le conține.

ONI 2018 clasa a X-a

#2471 gcl

Gigel a inventat un nou limbaj de programare pe care l-a numit GCL (Gigel Campion Language). În GCL pot fi utilizate maxim 26 variabile notate cu litere mici ale alfabetului englez. Valoarea inițială fiecărei variabile (la începutul execuției programului) este 0.

Un program în limbajul GCL este format dintr-o succesiune de comenzi, câte o comandă pe o linie. Scrieți un program care citește un program scris limbajul GCL și rezolvă următoarele două cerințe:

1. determină numărul de comenzi SCRIE care se execută;
2. determină rezultatele afișate de comenzile SCRIE din programul scris în limbajul GCL.

#2496 road

Se consideră o matrice cu N linii și N coloane care memorează doar cifre. Liniile și coloanele sunt numerotate de la 1 la N. Se consideră de asemenea un vector v de lungime 10, în care v[i] = costul cifrei i (i = 0..9). Trebuie să determinăm un drum de la coloana 1 la coloana N, deci care pornește de la o componentă aflată pe coloana 1 la o componentă de pe coloana N și fiecare pas se face dintr-o poziție (i,j) într-una din pozițiile învecinate pe linie sau coloană, adică (i+1,j), (i-1,j), (i,j+1), (i,j-1), cu condiția să nu iasă din matrice. Costul unui astfel de drum este suma costurilor asociate componentelor prin care trece drumul.
Să se determine numărul minim de cifre distincte prin care trece un drum de la coloana 1 la coloana N. Dacă există mai multe astfel de drumuri, atunci se va determina costul minim al unui astfel de drum.

Lot juniori Tulcea, 2018

Pescar împătimit pe râul Olt și pe bălțile din lunca Dunării, Eric a ajuns în Deltă și acum și-a propus să pescuiască pe canalele de aici. Sejurul lui Eric în Deltă începe în ziua 0, atunci când el ajunge la cherhanaua din Tulcea. În fiecare din următoarele n zile pornește din cherhanaua în care se află, merge să pescuiască pe un canal și apoi depozitează peștele prins în altă cherhana (de unde va porni în ziua următoare). El și-a făcut de la început planul stabilind exact la care canal pescuiește în fiecare zi și la care cherhana depozitează peștele prins la finalul zilei respective. Dorește însă să meargă o distanță cât mai mică.
Canalele sunt reprezentate prin drepte în plan iar cherhanalele prin puncte. În prima zi de pescuit, el pleacă de la cherhanaua din Tulcea (să o notăm cherhanaua 0), merge să pescuiască într-un loc din canalul 1, apoi depozitează peștele în cherhanaua 1. Rămâne aici peste noapte, apoi, în ziua 2, pornește din cherhanaua 1, pescuiește într-un loc (punct) de pe canalul 2 și depozitează peștele în cherhanaua 2 etc.
Considerând că pescarul Eric se poate deplasa oricum dorește, determinați distanța minimă pe care o parcurge (suma lungimilor tuturor segmentelor pe care el le parcurge).

Lot juniori Câmpulung Muscel, 2018

#2512 xnk

Se consideră numerele naturale nenule X, N, K, unde N este o putere a lui 2. Pentru o permutare p = (p1,p2,…,pN) a mulțimii {1,2,...,N} se determină maximul după modelul din exemplu. Să se determine numărul permutărilor mulțimii {1,2,...,N} în care valoarea X va fi prezentă pe nivelul K, nu și pe nivelul K-1. Pentru că acest număr poate fi foarte mare, se va determina modulo 1234577.

Lot juniori Câmpulung Muscel, 2018

În Piatra Neamț sunt N+2 locații numerotate de la 0 la N+1, de la stânga la dreapta. Distanța dintre două locații i si j este egală cu |i – j|. La început, în locațiile 0 și N+1, sunt construite benzinării, și în celelalte locații sunt case. Compania BuildNT a decis sa construiască N benzinării, una în fața fiecărei case.

Înainte să construiască o benzinărie, constructorii calculează valoarea S egală cu suma distanțelor de la fiecare casă la cea mai apropiată benzinărie, si adaugă această sumă la suma totală T. După, ei aleg o casă, la cea mai mare distanță de orice benzinărie, în fața căreia construiesc o nouă benzinărie. Casele sunt alese în așa fel încât, după construirea benzinăriilor, valoarea S recalculată sa fie minimă. Dacă sunt mai multe case ce respectă această regulă, se alege prima din stânga.
Desigur, după ce toate benzinăriile au fost construite, suma S va deveni 0 și suma totală T nu se va mai schimba.

Calculați T pentru o valoare dată N.

Olimpiada internațională pe Echipe, 2018

#2557 kbin

Numim număr k-binar un număr natural care în scrierea sa în baza 2 are exact k cifre de 1. De exemplu numărul 23 este 4-binar pentru că el se scrie în baza 2 sub forma 10111 și conține exact patru biți de 1. Pentru valorile date ale lui N și k, să se calculeze suma tuturor numerelor k-binare strict mai mici decât N. Deoarece sumele sunt foarte mari, acestea vor fi calculate modulo 1234567.

Balcaniada de Informatică 2018, ziua 1

#2610 Discuri

Se dau N numere reale considerate ca fiind razele a N discuri. Considerăm că așezăm un disc în sistemul xOy dacă îl plasăm la o coordonată x pozitivă suficient de mare, tangent cu axa Ox și deasupra ei, apoi îl împingem spre Oy până când devine tangent cu Oy sau cu primul disc așezat anterior întâlnit. În figura rezultată după așezarea tuturor discurilor în ordinea dată unele dintre ele pot fi considerate dispensabile, pentru că prin eliminarea lor nu se modifică lățimea totală a figurii, adică nici un disc nu se mai poate deplasa spre stânga. Identificați toate discurile dispensabile din figură.

#2894 Barlog

Este anul 2019, dar Zmeul-Cel-Rău și Făt-Frumos luptă în continuare. Zmeul l-a prins pe Făt-Frumos şi l-a închis în una dintre camerele bârlogului său. Un bârlog de zmeu are forma unui tablou bidimensional, în care camerele sunt plasate sub forma a n linii și m coloane. Vom numerota liniile de la 1 la n, iar coloanele de la 1 la m, astfel că fiecare cameră poate fi identificată prin numărul liniei și al coloanei pe care se află.

Orice cameră are patru pereți și câte o ușă pe fiecare perete prin care poate comunica cu camerele învecinate. Mai exact, camera de pe linia i și coloana j poate comunica cu camerele (i-1,j), (i,j+1), (i+1,j), (i,j-1) (desigur, dacă acestea există). Fiecare cameră are asociat un cod. Ușile din orice cameră se pot deschide cu o cartelă magnetică. Dacă codul camerei este un subșir al cuvântului memorat pe cartela magnetică, atunci ușile din camera respectivă se vor deschide folosind cartela. Ileana Cosânzeana a reușit să-i trimită lui Făt-Frumos o cartelă magnetică.

Scrieți un program care rezolvă următoarele două cerințe:
1. determină numărul de camere în care ar putea ajunge Făt-Frumos folosind cartela primită de la Ileana Cosânzeana;
2. determină numărul minim de camere prin care trece Făt-Frumos pentru a ieși din bârlogul zmeului (adică poate deschide ușa unei camere prin care ajunge în exteriorul bârlogului).

Olimpiada Municipală Iași, clasa a X-a