На форумі обговорюються лише питання, пов'язані з олімпіадою
Ви не зайшли.
Мое (Короткова Андрея) решение JUMP на базових тестах на компе, где писал очный тур, проходило за доли секунды, но в онлайне давало TL 0.1 sec. С чем это может быть связано?(У меня 0 за эту задачу).
Поза форумом
partisan написав:
Мое (Короткова Андрея) решение JUMP на базових тестах на компе, где писал очный тур, проходило за доли секунды, но в онлайне давало TL 0.1 sec. С чем это может быть связано?(У меня 0 за эту задачу).
--------------------------------------------------------------------------------
КОРОТКОВУ
То, что Вы прислали, вот так проходит проверку.
Результат перевірки
Тест Результат Время работы
01 FAILED (Time Out) 0.12 сек.
02 FAILED (Time Out) 0.12 сек.
03 FAILED (Time Out) 0.12 сек.
04 FAILED (Time Out) 0.11 сек.
05 FAILED (Time Out) 0.13 сек.
06 FAILED (Time Out) 0.13 сек.
07 FAILED (Time Out) 0.11 сек.
08 FAILED (Time Out) 0.12 сек.
09 FAILED (Time Out) 0.12 сек.
10 FAILED (Time Out) 0.12 сек.
11 FAILED (Time Out) 0.13 сек.
12 FAILED (Time Out) 0.13 сек.
13 FAILED (Time Out) 0.12 сек.
14 FAILED (Time Out) 0.12 сек.
15 FAILED (Time Out) 0.12 сек.
16 FAILED (Time Out) 0.12 сек.
17 FAILED (Wrong Answer) 0.46 сек.
18 FAILED (Time Out) 0.52 сек.
19 FAILED (Wrong Answer) 0.53 сек.
20 FAILED (Time Out) 0.12 сек.
Прошло тестов: 0 из 20.
Набрано баллов: 0 из 100.
А вто это вы прислали.....
{$B-,R-,N+}
const
maxn=1000;
nv=65535;
g=10;
gg=g*g;
type
versh=record
num:smallint;
t:extended;
end;
var
h:array[1..maxn] of longint;
z,v:longint;
n,i,j,k,l,tek:smallint;
ans:extended;
a,f:array[1..maxn,1..maxn] of versh;
d:longint;
tga:extended;
function prov(a,b:smallint;tga:extended):boolean;
var
i:smallint;
y:extended;
begin
for i:=a+1 to b-1 do
begin
y:=tga*(i-a)-g*sqr(i-a)*(1+sqr(tga))/(2*sqr(v));
if y<(h[i]-h[a]) then
begin
prov:=false;
exit;
end;
end;
prov:=true;
end;
begin
fillchar(a,sizeof(a),0);
read(n,k,l);
for i:=1 to n do read(h[i]);
read(v);
if l<k then
begin
z:=k;
k:=l;
l:=z;
for i:=1 to n div 2 do
begin
z:=h[i];
h[i]:=h[n-i+1];
h[n-i+1]:=z;
end;
end;
for i:=k to l do
for j:=k to l do if j<>i then
begin
a[i,j].num:=maxn;
f[i,j].num:=maxn;
end;
for i:=k to l do
for j:=i+1 to l do
begin
d:=sqr(sqr(v))*sqr(j-i)-gg*sqr(sqr(j-i))-2*g*(h[j]-h[i])*sqr(v)*sqr(j-i);
if d>=0 then
begin
tga:=(sqr(v)*(j-i)-sqrt(d))/(g*sqr(j-i));
if prov(i,j,tga) then
begin
a[i,j].t:=(j-i)/v*sqrt(1+sqr(tga));
a[i,j].num:=1;
end else
begin
tga:=(sqr(v)*(j-i)+sqrt(d))/(g*sqr(j-i));
if prov(i,j,tga) then
begin
a[i,j].t:=(j-i)/v*sqrt(1+sqr(tga));
a[i,j].num:=1;
end;
end;
end;
end;
for i:=k+1 to l do
for j:=k to i-1 do
begin
tek:=f[k,j].num+a[j,i].num;
if (tek<f[k,i].num)or((tek=f[k,i].num)and(f[k,j].t+a[j,i].t<f[k,i].t)) then
begin
f[k,i].num:=tek;
f[k,i].t:=f[k,j].t+a[j,i].t;
end;
end;
if f[k,l].num<>maxn then writeln(f[k,l].num,' ',f[k,l].t) else writeln(-1,' ',-1);
end.
Поза форумом