Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: 850 Tir  (Citit de 2512 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
DITzoneC
Nu mai tace
*****

Karma: 301
Deconectat Deconectat

Mesaje: 962



Vezi Profilul
« : Mai 22, 2009, 13:27:22 »

Aici puteţi discuta despre problema Tir.
Memorat
new_programmer
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 22



Vezi Profilul
« Răspunde #1 : Iulie 03, 2009, 17:05:19 »

In datele de intrare poate fi m par?
Memorat
xtreme
De-al casei
***

Karma: -26
Deconectat Deconectat

Mesaje: 118



Vezi Profilul
« Răspunde #2 : Iulie 04, 2009, 10:01:19 »

In datele de intrare poate fi m par?
Da.
Memorat
miculprogramator
Nu mai tace
*****

Karma: 65
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #3 : 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:

Cod:
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;
}

}
Memorat
Bogdan_tmm
De-al casei
***

Karma: 4
Deconectat Deconectat

Mesaje: 122



Vezi Profilul
« Răspunde #4 : Mai 12, 2010, 22:29:07 »

Cod:
if (p == l[x] && d == c[x])
pct += a[t][z];

Daca folosesti p si d doar cand sunt egale cu l [ x ] si c [ x ] de ce trebuie sa mai cauti p si d? O sa zici ca pentru a afla pe t si z , dar t si z pot fi aflate si altfel . Sper ca te-ai prins Very Happy
Memorat
cont_de_teste
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #5 : Mai 13, 2010, 08:41:11 »

Imi puteti spune cum pot optimiza, am 3 foruri, 2 cu i,j , iar al treilea parcurg sagetile. Fac cu o formula pentru fiecare sageata, sa aflu ce punctaj are.
Memorat
Bogdan_tmm
De-al casei
***

Karma: 4
Deconectat Deconectat

Mesaje: 122



Vezi Profilul
« Răspunde #6 : Mai 13, 2010, 13:06:20 »

Vezi sa te opresti primu for cand i+m-1>n si pe cel de-al 2-lea cand j+m-1>n
Memorat
cont_de_teste
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #7 : Mai 13, 2010, 14:25:32 »

Acelasi lucru ....
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines