Afişează mesaje
|
Pagini: 1 [2] 3 4 ... 13
|
26
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 085 Camion
|
: Ianuarie 11, 2010, 08:43:47
|
Am si eu nevoie de ajutor la problema ... Iau 2 teste cu TLE, fac la fel ca in solutia oficiala. Cred ca problema este la citire, eu am 4 vectori de cate 300000 de elemente si atunci cand K este undeva in jurul acestei valori imi buseste. Citirea o fac clasic : for (i=1; i<=K; ++i) fscanf (f,"%d %d %d %d", &x1[i], &y1[i], &x2[i], &y2[i]); Puteti sa ma ajutati ?
|
|
|
28
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Geometrie - clasa a 8 a
|
: Ianuarie 10, 2010, 13:03:55
|
Acum am inteles. Deci folosesc una din relatiile de mai sus daca vreau sa verific daca punctul M de coord (x, y) se afla pe dreapta determinata de pct A (xA, yA) si B (xB, yB). Am invatat, repetat si aplicat cam tot ce ati scris voi aici, ar mai fi ceva?
|
|
|
29
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Geometrie - clasa a 8 a
|
: Ianuarie 10, 2010, 12:35:46
|
Redeschid subiectul pentru ca am o nelamurire legata de ecuatia unei drepte care trece prin 2 puncte date A (xA, yA) si B (xB, yB) :
(x - Xa) (yB - yA) == (xB - xA) (y-yA)
Nu inteleg cine sunt x si y in cazul asta, cand e vorba doar de xA, yA, xB, yB.
|
|
|
31
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 850 Tir
|
: Ianuarie 01, 2010, 23:09:39
|
Am nevoie de putin ajutor ... Mut pentru fiecare i=1, n-m+1 si j=1, n-m+1 afisul si verific punctajul maxim. Ma folosesc de matricea a unde am tinta initiala si verific daca indicii d si p corespund vreunei lovituri, in caz afirmativ adun punctajul. La sfarsit verific daca am depasit maximul si retin datele necesare pt output. Iau foarte multe TLE-uri, ma puteti ajuta sa optimizez asta: for (i=1; i<=n-m+1; ++i) for (j=1; j<=n-m+1; ++j) { pct = 0; t = z = 1; for (p=i; p<=m+i-1; ++p) for (d=j; d<=m+j-1; ++d) { for (x=1; x<=k; ++x) if (p == l[x] && d == c[x]) pct += a[t][z]; z ++; if (z > m) { z = 1; t ++; } } if (pct > Max) { Max = pct; lin = i; col = j; } }
|
|
|
34
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 406 Triunghi2
|
: Decembrie 31, 2009, 14:50:17
|
Salut ! Iau 70 de puncte, calculez aria cu determinanti astfel: int calc_arie (int a1, int b1, int a2, int b2, int a3, int b3) { int area; area = (a1 * b2 + a3 * b1 + a2 * b3 - b2 * a3 - a1 * b3 - a2 * b1); area /= 2; return abs(area); } Sa fie de vina int-ul ? In rest aplic metoda descrisa pe forum ...
|
|
|
35
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Pascal->C++
|
: Decembrie 30, 2009, 12:30:10
|
Ideea de baza e ca nu trebuie sa inveti pentru facultate, ci pentru ca te ajuta la algoritmica. Daca lucrezi din placere si pentru ca esti interesat, la facultate nu vei avea nicio problema.
Nu trebuie sa spui "a, nu ma duc la Bucuresti ca fac aia C si mie nu-mi place", trebuie sa inveti cat mai multe limbaje.
|
|
|
37
|
infoarena - concursuri, probleme, evaluator, articole / Informatica / Răspuns: Pascal->C++
|
: Decembrie 29, 2009, 12:52:40
|
Eu am invatat prima data C++, nu stiu de ce imi parea mai usor. Acum scriu in C si vad o diferenta semnificativa, e mai bun si-mi place mai mult. Eu zic sa te apuci de C ! Sa zicem ca C/C++ are mai multe avantaje decat Pascal. Din cate am inteles tu vrei sa inveti pentru Olimpiada, mai e timp, dar nu foarte mult. Invata chestiile de baza pe care le-a enumerat Marcel mai sus si o sa fie bine. Cert este ca trebuie sa te pui serios pe treaba ! Nu cred c-o sa-ti fie foarte greu de "tradus", eu m-am obisnuit repede.
|
|
|
41
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: Problema Maxd
|
: Decembrie 22, 2009, 00:48:28
|
var ciur: array[1..10000]; var i, j, max : word;
Max := 10000; for i:=2 to Max do ciur[i] := 1; for i:=2 to Max do if ciur[i] = 1 begin j := 2; while (i * j <= Max) begin ciur[i*j] := 0; j := j + 1; end; end;
for i:=2 to Max do if ciur[i] = 1 write (' ', ciur[i]); Cam asa ar veni ciurul in Pascal, scuza eventualele greseli, n-a mai scris de mult. Variantele de ciur din articol sunt mai bune si usor transformabile. Spre sa intelegi.
|
|
|
47
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 307 Maxsecv
|
: Octombrie 10, 2009, 18:10:02
|
Am aplicat aceeasi metoda ca si voi si nu pricep de ce iau incorect pe 9 teste. Pe toate testele date de mine si pe cele puse da voi da bine ... f>>n; for (i=0;i<n;++i) { f>>x; if (!x) nr=0; else nr++; if (nr>max1) { max2=max1; max1=nr; } else if (nr>max2) max2=nr; } f.close(); g<<max1+max2<<"\n"; g.close(); Stie cineva ce gresesc?
|
|
|
|