Afişează mesaje
|
Pagini: [1] 2
|
5
|
Comunitate - feedback, proiecte si distractie / Off topic / Răspuns: Intrebari in legatura cu bacul la info (2012)
|
: Februarie 20, 2012, 12:40:38
|
Merci pentru raspuns.
Problema mea este ca m-am obisnuit cu c++ standard, care e diferit de borland... de exemplu, iostream in loc de iostream.h si alte diferente. Eventual, o sa pun un comentariu la inceputul programului ca e c++ standard pe 32 biti
Si mai am o intrebare... se depuncteaza daca uit sa includ vreo librarie? De exemplu, functia memset nu stiu sigur in ce librarie e (cred ca string.h, sau stdlib.h)... se depuncteaza daca nu pun libraria corecta?
|
|
|
6
|
Comunitate - feedback, proiecte si distractie / Off topic / Intrebari in legatura cu bacul la info (2012)
|
: Februarie 16, 2012, 14:01:41
|
Am si eu niste nelamuriri... ca se apropie bacul. Personal, eu stiu mult mai multe decat se face la clasa, si am nelamuriri: 1. Se corecteaza folosind c++ standard (dupa '98 sau cand a aparut), sau cel din borland? Pe 32 sau 16 biti? C sau C++? 2. E mai bine sa folosesc librariile standard (de exemplu, algoritmi de genul qsort, bsearch si multe altele), sau sa le implementez eu? 3. E mai bine sa folosesc algoritmi avansati (metoda copil destept ), sau metoda naiva simpla (metoda copil muncitor)? (de ex. quicksort sau sortari simple, cautare binara sau cautare naiva etc) 4. In cazul c++ standard, am voie sa folosesc STL (vectori, cozi, string si alte minuni)? 5. E nevoie sa pun comentarii in cod (ex. ce face codul din urmatoarele randuri, sau sa explic o linie mai neclara)?
|
|
|
7
|
Comunitate - feedback, proiecte si distractie / Off topic / Care e materia pentru olimpiade?
|
: Ianuarie 10, 2012, 10:29:13
|
Pe net nu gasesc nimic, site-ul oficial al olimpiadei de info (olimpiada.info) nu merge, manuale la info n-am. Din cate imi amintesc in anii trecuti scria ca materia ptr liceu este cea de la profilul mate-info intensiv... dar din pacate nu sunt acolo, si n-am idee ce au ei in materie.
Din cate stiu, la 11-12 sunt grafurile, structuri de date cum ar fi arbori binari de cautare, heapuri etc, geometrie si ce era in anii trecuti: programare dinamica, si nu mai stiu.
|
|
|
8
|
Comunitate - feedback, proiecte si distractie / Off topic / Răspuns: Top 5 Computer Games
|
: Ianuarie 10, 2012, 10:11:48
|
Seria Half Life (primul nu prea mi-a placut, nici nu l-am inteles ca eram prea mic, dar HL2 si dupa au fost super, grafica superba, la fel si povestea ) Portal 1,2 Minecraft (imi place mult ideea... cu grafici relativ simple, si totusi fun si addictive) Starcraft 2Bioshock 1,2 (idei interesante, cu orasul subacvatic) Audiosurf (un joc interesant care e bazat pe ritmul unei melodii la alegere) Urban Terror (varianta free a lui counter strike) si Team Fortress (ca acuma e free si asta ) Seria GTA mi-a placut pentru free roaming, harta mare si realism, dar povestea mai putin. Genul de racing m-a cam plictisit, nu prea ofera nimic nou, si ultimele jocuri (de la NFS undercover pana in prezent de exemplu) merg ingrozitor pe laptopul meu. Totusi mi-a placut NFS Most Wanted, NFS Porche (il mai jucam pe la scoala in LAN ), Burnout Paradise.
|
|
|
9
|
Comunitate - feedback, proiecte si distractie / Scrie articole / Răspuns: Idei de articole
|
: Aprilie 11, 2011, 14:55:03
|
Ce ziceti de ceva mai low-level, cum ar fi crearea unui kernel in C, si bootarea cu GRUB Stiu ca atunci cand am inceput sa invat programare, visul meu era sa descopar cum se face un sistem de operare... si acum s-a implinit... Am si un blog de prezentare a ce am reusit sa creez daca e cineva interesat : http://luxsystem.blogspot.com/Cand o sa mai am timp prin vacante voi mai lucra la el. Pot sa spun ca mi-au fost foarte de folos skill-urile castigate din crearea unui asemenea proiect. Pe langa faptul ca am invatat cum functioneaza o gramada de lucruri care sunt bine ascunse sub GUI, am invatat cum sa folosesc eficient memoria, operatii pe biti si asa mai departe... oricum lucruri care m-au ajutat mult.
|
|
|
17
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Stocare infiniti in variabile
|
: Martie 18, 2011, 22:25:27
|
In C++ exista la tipul de date float/double variabila de tipul NaN (Not a Number), care e mai ciudat. (de exemplu daca f = NaN, expresia (f != f) are rezultat 'True'). Totusi in C++ poti creea o clasa care sa substituie tipul de date pe care il vrei. Aici e un exemplu foarte simplu: class Int {
public: int value;
int Inf;
Int() { Inf = 0x7FFFFFFF; } Int(int val) { value = val; Inf = 0x7FFFFFFF; } Int operator+ (Int b) { if (value != Inf && value != -Inf && b.value != Inf && b.value != -Inf) return Int(value + b.value); if (value == Inf || value == -Inf) return Int(value); return Int(b.value); } };
La fel pot fi definiti toti ceilalti operatori. (-*/) Pentru produs si diferenta este putin mai delicat, pentru ca poti avea nedeterminari (de exemplu Inf/Inf, 0/0, Inf-Inf etc).
|
|
|
21
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 981 Immortal
|
: Martie 17, 2011, 22:24:01
|
Eu am incercat sa rezolv cu un fel de back cu coada. Pentru a obtine usor solutia la final, coada e structurata ca un arbore. O mica problema ar fi ca un element din coada are 76 bytes (destul de mare), pentru ca in fiecare nod retin noua lista de nemuritori. Cam asa arata structura: struct QueueItem { Point From, To; int RemainingNoobs; int Parent;
Point Noobs[15]; }; Iau doar 50 puncte din pacate. Am facut rost de testul 2 de la OJI, care e unul care imi pica si cu 500MB de memorie alocati tot iese din coada. Algoritmul meu este sa sortez vectorul Noobs la fiecare element din coada, in functie de distanta la fiecare din punctele pe care le contine. Pentru elementele cu distanta 1 calculez directia, si vad daca pot sa sar peste. Daca e ocupata celula, inseamna ca exista un element cu distanta 4 pe directia respectiva. Cand gasesc o pozitie unde pot sari, adaug in coada structura ce contine toate detaliile necesare. Nu am avut nici un TLE, deci ma gandesc ca algoritmul e ok. Aici este toata sursa.
|
|
|
22
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: [C]intrebari pointeri
|
: Martie 17, 2011, 11:49:35
|
O varianta mai simpla in C++ e sa folosesti new si delete, in loc de malloc, respectiv free.
int *a; a = new int; delete a;
Pentru un sir: a = new int[dimensiune]; delete[] a;
In C nu merge, deci cu malloc si free: int *a; a = malloc(sizeof(int)); free(a);
Pentru un sir: a = malloc(sizeof(int) * dimensiune); free(a);
La siruri de caractere, e la fel, doar ca folosesti tipul 'char' in loc de 'int'.
|
|
|
24
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 045 Submultimi
|
: Martie 17, 2011, 11:37:34
|
Problema ta nu e ca folosesti stream-uri, ci ca folosesti endl. Un program nu afiseaza caracter cu caracter pe masura ce se executa o instructiune de afisare, ci respectivele caractere sunt introduse intr-un buffer care, cand este umplut, se afiseaza in intregime. Astfel operatia de afisare se desfasoara mai rapid. Cand afisezi cu endl, fortezi golirea buffer-ului. Daca afisezi '\n', acesta este tratat ca un caracter oarecare si nu intervine asupra comportamentului buffer-ului, acesta functionand eficient in continuare. Daca vei folosi e foarte probabil sa iei 100. Ai grija, la olimpiada nu este indicata folosirea lui endl (cred ca este mentionat pe undeva prin instructiuni). Aha, Merci de sfat
|
|
|
25
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 160 Zota & Chidil
|
: Martie 17, 2011, 11:35:13
|
Nu inteleg cum vine! Daca coordonatele sunt (x, y), atunci pe exemplul dat se merge in pozitiile: (0,0) (0,-3) (6,-3) (6,-10) (8,-10) (8,-7) (14,-7) (14,-13) (11,-13) Daca capcanele sunt in (5,6) si (12,10) atunci drumul nu se apropie niciodata . Nu mai inteleg nimic!!! In figura coordonatele par a fi *-1, adica (-5, -6)
|
|
|
|