Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 042 Statistici de ordine : Ianuarie 17, 2012, 00:20:11
In functia sel:
Cod:
int q = part(li, lf);
int t = q-li+1;

Din cate imi dau seama q este statistica de ordine a elementului ales aleator, dar t ce este? nu-mi dau seama care-i logica, dar vad ca fara el nu merge.
2  infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 024 Deque : Noiembrie 11, 2011, 23:54:51
De ce depasesc timpul la sursa asta. Am incercat s-o fac cat mai rapida dar pe pc-ul meu doar citirea la testul 15 imi ia ~1.4 secunde deci nu vad cum ar incapea in timp (am incercat si cu deque din stl si cu vector simplu dar iau la fel).
3  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iulie 16, 2011, 15:01:23
Exact pe acelasi principiu am mers si eu doar ca solutia ta e mult mai eleganta.. si eficienta...
4  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iulie 16, 2011, 13:59:20
A mai dat cineva admiterea la mate-info (unibuc) azi?
La problema de info eu n-am avut alta idee decat backtracking si merge destul de bine pana la n=20, apoi timpul creste destul de mult...
Bineinteles ca problema n-avea nici macar un exemplu de date de intrare (sau macar o limita la n-ul ala), iar baremul ca de obicei fara niciun program in el..

Solutiile mele sunt astea, sper sa fie corecte. A gasit cineva o metoda mai rapida sau o formula directa (cum imi zicea un coleg).

( link: subiect, barem )

Cod:
Pt n= 1 produsul maxim este: 1
Pt n= 2 produsul maxim este: 2
Pt n= 3 produsul maxim este: 3
Pt n= 4 produsul maxim este: 4
Pt n= 5 produsul maxim este: 6
Pt n= 6 produsul maxim este: 9
Pt n= 7 produsul maxim este: 12
Pt n= 8 produsul maxim este: 18
Pt n= 9 produsul maxim este: 27
Pt n= 10 produsul maxim este: 36
Pt n= 11 produsul maxim este: 54
Pt n= 12 produsul maxim este: 81
Pt n= 13 produsul maxim este: 108
Pt n= 14 produsul maxim este: 162
Pt n= 15 produsul maxim este: 243
Pt n= 16 produsul maxim este: 324
Pt n= 17 produsul maxim este: 486
Pt n= 18 produsul maxim este: 729
Pt n= 19 produsul maxim este: 972
Pt n= 20 produsul maxim este: 1458
Pt n= 21 produsul maxim este: 2187
Pt n= 22 produsul maxim este: 2916
Pt n= 23 produsul maxim este: 4374 (1-2 sec)
Pt n= 24 produsul maxim este: 6561
Pt n= 25 produsul maxim este: 8748
Pt n= 26 produsul maxim este: 13122
Pt n= 27 produsul maxim este: 19683 (21 secunde)
...etc

Daca raspunsurile astea sunt cele corecte atunci vad ca produsul maxim iese din descompunerea lui n in suma de 3-uri si 2-uri, cu cat mai multi 3 (ex: 27= 3+3+3+..+3 (de 9 ori) => produsul = 3^9 = 19683).  Brick wall de ce imi vin ideile deabea acum  Brick wall
5  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iulie 03, 2011, 14:27:43
Mda, e dezastru national cu BAC-ul asta, sub 50% promovabilitate... Voi ce-ati facut? sper ca nu se pune problema de trecut, eu am luat 8.70 la info, chiar cu 0.10 mai mult decat ma asteptam, iar media 8.55, ceea ce e ok, zic eu.
6  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iulie 01, 2011, 17:17:06
Apropo de barem. Voua nu vi se pare ca este o mica greseala la ultimul algoritm din barem? Nu trebuia pusa o conditie ca S1-c1<10 si s2-c2<10? Adica daca S1=13, c1 nu are cum sa fie 1 pentru ca S1-c1=12 care nu e cifra.

Si afisarea cum ati facut-o? Eu am afisat direct cifrele pentru ca nu scria nicaieri ca trebuie salvat sau calculat efectiv numarul. Ci doar sa se gaseasca in fisierul text.

Ai dreptate, trebuiau si conditiile in for. Eu am facut 5 for-uri sa construiesc numarul (stiu ca o sa pierd un punct dar nu mi-a venit alta idee..).
Si la afisare cred ca intra la: "(*) Se acordă punctajul chiar dacă soluŃia propusă nu prezintă elemente de eficienŃă sau afisează numerele cifră cu cifră." deci e ok.
7  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iulie 01, 2011, 14:39:48
La partea I, 2 b) minimu era 31 si maximul 35? ca in barem "b. Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare valoare corectă." Neutral

A, si la 5:
Citat
5. Pentru program corect 10p.
-declararea corectă a tuturor variabilelor
(siruri de caractere + variabile simple) 1+1p.
-citirea corectă a tuturor datelor 2p.
-determinarea principial corectă a unui
cuvânt care începe cu un alt cuvânt 2p.
-numărarea cuvintelor cerute 2p.
-afisarea rezultatului 1p.
-corectitudinea globală a programului1) 1p

Daca am gresit programu (am citit cerinta prost si am comparat doar primele 3 litere ale cuvantului) primesc vreun punctaj pt numararea cuvintelor cerute, afisarea rezultatului sau corectitudinea globala? (adica se refera la algoritm corect sau la numarul corect?)
8  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Bacalaureat 2011 : Iunie 30, 2011, 16:24:34
Voi cum stati cu lucratul variantelor? Le-ati lucrat pe cele din 2009?
Eu am lucrat vreo 10 din 2008 (ca la alea am gasit si rezolvarile), si azi mi-am dat seama ca cele din 2009 sunt mult mai diferite decat credeam... chiar am gasit si un ex pe care n-am stiut sa-l fac (bine, cred ca era formulat incorect) si am dat pt prima oara de cerintele de genu "descrieti in limbaj natural etc".
9  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 973 Piramid : Februarie 22, 2010, 11:53:08
eu nu inteleg ce gresesc, am 2 surse cu diferente foarte mici intre ele, ambele folosesc acelasi mod de rezolvare, ambele dau corect la exemple, ambele imi dau 813400 la 100x100 plina cu 1, la fel imi dau si la alte exemple, dar doar una din ele ia 20p (cealalta 0, imi spune raspuns incorect)

practic, pt fiecare 1 din matrice verific in sus, jos, stanga, dreapta daca se poate face un triunghi cu o constructie gen
while (v[++a][--a2]==1 && v[++b][++b2]==1) {//daca (intre a si b sunt doar 1-uri) nr++}
a,b - indicii liniei initiale, a2,b2 indicii coloanei initiale

gresesc ceva?
10  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 973 Piramid : Februarie 22, 2010, 00:01:15
poate cineva cu o sursa de 100 sa-mi spuna cate piramide sunt la o matrice de 100x100 plina cu 1?

ms
11  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: problema seekg : Ianuarie 31, 2010, 17:45:35
dap, asta imi merge  Applause

mersi mult  Very Happy
12  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: problema seekg : Ianuarie 31, 2010, 17:38:14
o sa razi dar tot la fel imi face Wink) (vezi ca in codu tau ai pus la a 2-a deschidere alt nume de fisier (data.in in loc de date.in) )

vad ca obtin ce trebuie daca aloc alta variabila fisierului (gen fin2); dar nu inteleg de ce nu merge seekg-ul, din cate inteleg eu asta ar trebui sa fie rostul lui
13  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: problema seekg : Ianuarie 31, 2010, 16:28:31
am citit articolul de pe cplusplus
ei au linia: is.seekg (0, ios::beg);
iar eu: fin.seekg (0, ios::beg);


problema e ca la mine nu-mi reia fisieru de la inceput dupa ce il parcurg odata
am simplificat programu cat am putut
am asa acum:
1. declar fisieru
2. il parcurg, citind din el cat se poate (adica pana la sfarsit), cu un while
3. am instructiunea fin.seekg (0, ios::beg);  care ar trebui sa duca pointeru de citire la inceputul fisierului
4. citesc din nou din fisier si afisez dar imi afiseaza doar ultimul cuvant din fisier, desi ar trebui sa o ia de la inceput (deci sa afiseze primul cuvant)
5. inchid fisieru

Cod:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
char a[1000];
ifstream fin ("date.in");

while (fin>>a)
cout<<"bucla while: "<<a<<endl;

fin.seekg (0, ios::beg);
cout<<endl<<endl;

fin>>a;
cout<<a<<endl;

fin.close();
return 0;
}
14  infoarena - concursuri, probleme, evaluator, articole / Informatica / problema seekg : Ianuarie 31, 2010, 14:10:49
incerc sa fac cateva exercitii cu fisiere si am facut programul asta care vrea sa afiseze de 2 ori un fisier, dar nu inteleg ce gresesc Brick wall

ps:stiu ca sunt moduri mai usoare de a face ce vreau eu dar as vrea sa inteleg de ce nu merge asta
ps2:folosesc MinGW

Cod:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
char a[1000];
ifstream fin ("date.in", ios::ate);

fin.seekg(0, ios::beg);

while (fin>>a)
cout<<fin.tellg()<<' '<<a<<endl;
//pana aici e ok

cout<<"\nfin: "<<fin.tellg(); //arata -1
fin.seekg(0, ios::beg);
cout<<"\nfin: "<<fin.tellg(); //tot -1

cout<<endl<<endl;

while (fin>>a) //partea asta n-o executa deloc
cout<<fin.tellg()<<' '<<a<<endl;

fin.close();
return 0;
}
15  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Permutari : Noiembrie 12, 2009, 21:03:07
e interesant articolul, are niste formule interesante, dar ma cam depaseste  Confused .. mersi oricum
16  infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Permutari : Noiembrie 12, 2009, 15:08:52
ah, nu ma gandisem la asta, ms  Smile
17  infoarena - concursuri, probleme, evaluator, articole / Informatica / Permutari : Noiembrie 11, 2009, 22:43:42
ma poate ajuta cineva cu un program in c++ care sa permute n numere citite la tastatura, stiu sa permut n numerele de la 1 la m, dar cu n numere citite de la tastatura nu prea ma descurc,
daca folosesc acelasi principiu, pt n=3 si citind 1,2,3 (astea puse intr-un alt vector separat), se opreste la prima solutie corecta, anume 123 apoi scade k-ul, si ajunge 113, apoi revine iar la 123, solutie gasita, apoi scade k-ul.. si repeta faza asta la infinit
are cineva vreo idee mai buna?
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines