- Dejected Birthday-允诺
- 2009-08-01 18:48:24 @
编译通过...
├ 测试数据 01:答案正确... 0ms
├ 测试数据 02:答案错误... ├ 标准行输出..0:45..
├ 错误行输出..0:43..
├ 测试数据 03:答案正确... 0ms
├ 测试数据 04:答案正确... 0ms
├ 测试数据 05:答案错误... ├ 标准行输出22:5..
├ 错误行输出 17:5..
├ 测试数据 06:答案正确... 0ms
├ 测试数据 07:答案错误... ├ 标准行输出 4:52
├ 错误行输出 4:47
├ 测试数据 08:答案错误... ├ 标准行输出 18:32
├ 错误行输出 18:23
├ 测试数据 09:答案正确... 0ms
├ 测试数据 10:答案正确... 0ms
---|---|---|---|---|---|---|---|-
Unaccepted 有效得分:60 有效耗时:0ms
program p1411;
var a:array[1..1000,1..1000]of longint;
b:array[1..3]of longint;
v:array[1..1000]of boolean;
i,j,n,k,max,p:longint;
h,m,s:longint;
procedure init;
var x,y,c,p,u:longint;
st:string[5];
s1,s2:string[2];
begin
readln(st);
p:=pos(':',st);
s1:=copy(st,1,p-1);
s2:=copy(st,p+1,2);
val(s1,h);
val(s2,m);
readln(n,k);
for i:=1 to 1000 do
for j:=1 to 1000 do
a:=-1;
for i:=1 to k do
begin
readln(x,y,c);
if not((x=0) or (y=0)) and (xy)
then
begin
a[x,y]:=c;
a[y,x]:=c;
end;
end;
read(st);
if pos('hour',st)0 then
begin
p:=pos('hour',st);
s1:=copy(st,1,p-1);
val(s1,u);
inc(h,u);
exit;
end;
if pos('min',st)0 then
begin
p:=pos('min',st);
s1:=copy(st,1,p-1);
val(s1,u);
inc(m,u);
exit;
end;
if pos('second',st)0 then
begin
p:=pos('second',st);
s1:=copy(st,1,p-1);
val(s1,u);
inc(s,u);
exit;
end;
end;
begin
init;
if s>=60 then
begin
m:=m+s div 60;
s:=s mod 60;
end;
if m>=60 then
begin
h:=h+m div 60;
m:=m mod 60;
end;
if (h>24) or ((h=24) and (m>0)) then
begin
write('Sad');
halt;
end;
v[1]:=true;
for i:=2 to n do
begin
max:=maxlongint;
for j:=1 to n do
if not(v[j]) and (a[1,j]-1) and (a[1,j]a[1,p]+a[p,j]) or (a[1,j]=-1) then
a[1,j]:=a[1,p]+a[p,j];
end;
inc(m,a[1,n]);
if m>=60 then
begin
h:=h+m div 60;
m:=m mod 60;
end;
if (h>24) or ((h=24) and (m>0)) then
begin
write('Sad');
halt;
end;
write(h,':');
if m