infoarena

infoarena - concursuri, probleme, evaluator, articole => Arhiva de probleme => Subiect creat de: Adrian Diaconu din Mai 22, 2009, 13:27:22



Titlul: 850 Tir
Scris de: Adrian Diaconu din Mai 22, 2009, 13:27:22
Aici puteţi discuta despre problema Tir (http://infoarena.ro/problema/tir).


Titlul: Răspuns: 850 Tir
Scris de: Iffi Fiffi din Iulie 03, 2009, 17:05:19
In datele de intrare poate fi m par?


Titlul: Răspuns: 850 Tir
Scris de: speedzeal din Iulie 04, 2009, 10:01:19
In datele de intrare poate fi m par?
Da.


Titlul: Răspuns: 850 Tir
Scris de: A Cosmina - vechi din 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;
}

}


Titlul: Răspuns: 850 Tir
Scris de: Tirca Bogdan din 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 :D


Titlul: Răspuns: 850 Tir
Scris de: Cont Teste din 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.


Titlul: Răspuns: 850 Tir
Scris de: Tirca Bogdan din 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


Titlul: Răspuns: 850 Tir
Scris de: Cont Teste din Mai 13, 2010, 14:25:32
Acelasi lucru ....