Afişează mesaje
|
Pagini: 1 ... 10 11 [12] 13
|
279
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 543 Dk
|
: Aprilie 08, 2012, 12:57:35
|
Folosesc algoritmul probabilistic numit Miller Rabin si iau TLE pe 6 teste ( cu ridicare la putere in timp logaritmic pentru bazele 2,7 si 61 ) . Ce as mai putea optimiza? Multumesc anticipat!
Am reusit in cele din urma, dar cred ca ar trebui marita limita de timp macar pana la 1 sec, oricum in O(n*sqrt(Xi)) nu intra .
|
|
|
285
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 412 Randuri
|
: Februarie 24, 2012, 15:57:30
|
Imi poate spune cineva daca gresesc la determinarea celui mai lung subsir comun : int muzicalitate(char a[], char b[]) { int n,m,i,j; n=strlen(a)-1; m=strlen(b)-1; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(a[i]==b[j]) d[i][j]=1+d[i-1][j-1]; else d[i][j]=maxim(d[i-1][j],d[i][j-1]); return d[n][m]; }
Sirurile sunt indexate de la 1(pe pozitia 0 se afla ' '); Multumesc anticipat!
|
|
|
290
|
Comunitate - feedback, proiecte si distractie / Feedback infoarena / Răspuns: Bug reports
|
: Ianuarie 15, 2012, 09:50:18
|
Am si eu o problema cu monitorul de evaluare si cu autentificarea. Spre exemplu apar autentificat intr-o sectiune insa in alta sunt anonim, iar de cateva ore in monitor ( dar numai in sectiunea cu "solutiile mele" ) se evalueaza o sursa trimisa de mine . Am citit pagina cu "probleme de autentificare" si am dat delete la Cookies, dar nimic. Ma poate ajuta cineva?
|
|
|
292
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 007 Arbori de intervale
|
: Decembrie 29, 2011, 13:46:19
|
Da, dar pe urma nu pot sa inteleg cum aflu maximul pe un interval. Daca poti sa imi scrii un cod sa inteleg mai bine. Procedura de actualizare din articolul doamnei Lica ar arata cam asa ( sa spunem ca dorim marirea valorilor din intervalul [a,b] cu 5 ) :
void update(int nod, int st, int dr) { int mij; if((a<=st)&&(dr<=b)) { MaxArb[nod]=MaxArb[nod]+5; return; } else { mij=(st+dr)/2; if(a<=mij) update(2*nod,st,mij); if(mij<b) update(2*nod+1,mij+1,dr); MaxArb[nod]=MaxArb[nod]+5; } }
Gresesc undeva, dar nu imi dau seama unde.
|
|
|
|