Sunteți pe pagina 1din 2

Concurs online de informatic

Categoria PROGRAMARE
Seciunea 5-6 avansai
DESCRIERE SOLUII SECIUNEA 5-6 AVANSAI

PROBLEMA 1

autor prof. Mihaela Constantin

DANS
Problema presupune parcurgerea perechilor de numere pentru a calcula suma timpilor i a
numrului de copii, valoarea minim i cea maxim dintr-un ir de numere.

PROBLEMA 2

autor prof. Alice Georgescu

OPERAII MATEMATICE
Pentru rezolvarea punctului 1 trebuie urmariti paii jocului.
La a doua cerinta punctajul maxim se obine pornind de la observaia ca acesta este un criteriu al
divizibilitii cu 7 i nu prin formarea numrului din cifrele indicate.

PROBLEMA 3

autor prof. Simona Darie

PETI
Se determin numrul de sptmni complete(s) i restul zilelor rmase n ultima sptmn(r). Dac notm
cu g1 greutatea iniial a unui petior i cu g2 cu ct se ngra n fiecare zi atunci cnd a fost cumprat,
greutatea sa final este dat de expresia de mai jos:

1 + 7 2 + 7 2 2 + + 7 2 + ( + 1) 2
PROBLEMA 4

propunator prof. Luminia Nstase

BOSUMFLAT
Problema Bosumflat - descriere soluie
Vom folosi un vector pentru a reine gradul de bosumflare al fiecrui element (iniial toate valorile
din vector sunt 0). Alegem toate perechile de numere (X, Y) i verificm pentru fiecare dintre
acestea att dac Y l bosumfl pe X (NrPozImpare X < NrPozPare Y i NrPozPare X >
NrPozImpare Y) ct i dac X l bosumfl pe Y (NrPozImpare Y < NrPozPare X i NrPozPare Y >
NrPozImpare X), actualiznd gradul pentru elementul respectiv, dac e cazul.
Pentru a obine punctajul maxim este necesar ca la citire s memorm pentru fiecare numr cele
dou valori de care vom avea nevoie (numrul format din cifrele de pe poziii pare precum i
numrul format din cifrele de pe poziiile impare). Astfel, nu va mai fi nevoie s calculm la fiecare
pas aceste valori.
La final, rmne doar s afim vectorul de grade. Complexitatea total O(N^2).
Ploieti, 6 iunie 2015

Concurs online de informatic


Categoria PROGRAMARE
Seciunea 5-6 avansai
PROBLEMA 5

autor prof. Alice Georgescu

SILVER
Pentru rezolvarea primei cerine se aplic n sens invers primele dou reguli
if (a%3==0) a/=3;
else
if ((a-1)%6==0) a=(a-1)/6;
Condiia de oprire din acest ciclu repetitiv trebuie s ina cont de regula 3 (numerele sunt strict mai
mari decat 1).
Pentru rezolvarea celei de a doua cerine se obine punctaj maxim pentru variantele urmtoare.
varianta1.
Se folosete un vector de prezena cu ajutorul cruia sunt marcate elementele din mulime.
varianta2.
Se construiesc pe rnd elementele mai mici dect valoarea limita indicat, apoi se face o sortare a
elementelor obinute.

Ploieti, 6 iunie 2015

S-ar putea să vă placă și