|
Trả lời: STNODE - Ai ACC được 100đ chỉ giáo giùm mình với! 9 năm, 7 tháng trước
|
(+0)
|
Mọi người cho em hỏi, nếu cài bằng BFS như em làm ở dưới có thể AC được không.
Em cài chỉ được có 90 thôi.
Bạn sửa lại chỗ sai của mình. q[l]:=....
|
|
|
Đã lưu IP
|
|
Đã khóa chức năng gửi bài. |
|
Trả lời: STNODE - Ai ACC được 100đ chỉ giáo giùm mình với! 9 năm, 7 tháng trước
|
(+0)
|
hok biết chương trình của em có vấn đề j hok mà sao không được điểm nào au.anh nào coi giúp em với.
Code: |
const fi='';
fo='';
var a:array[1..1000000]of longint;
tham:array[1..10000]of boolean;
q,cha,b,head:array[1..10000]of longint;
l, n,m,s,t,max:longint; co:boolean;
procedure nhap;
var last:array[1..10000]of longint;
u,v,i:longint;
f:text;
begin
assign(f,fi);
reset(f);
readln(f,n,m,s,t);
head[1]:=1;
while not eof(f) do
begin
readln(f,u,v);
head[u+1]:=head[u+1]+1;
end;
for i:=1 to n do
head[i+1]:=head[i+1]+head[i];
close(f);
reset(f);
readln(f);
last:=head;
while not eof(F) do
begin
readln(f,u,v);
a[last[u]]:=v;
inc(last[u]);
end;
close(f);
end;
procedure bfs(s:longint);
var u,v,dau,cuoi:longint;
begin
dau:=1;
cuoi:=1;
q[dau]:=s;
repeat
u:=q[dau];
for v:=head[u] to head[u+1]-1 do
if (not tham[a[v]]) then
begin
cuoi:=cuoi+1;
q[cuoi]:=a[v];
cha[a[v]]:=u;
if v=t then begin
co:=true;
exit;
end;
end;
dau:=dau+1;
until dau>cuoi;
end;
procedure timduong;
var i,k:longint;
begin
k:=cha[t];
i:=0;
repeat
inc(i);
b[i]:=k;
k:=cha[k];
until k=s;
l:=i;
end;
procedure xuli;
var i:longint;
begin
max:=0;
bfs(s);
timduong;
co:=false;
for i:=1 to l do
begin
fillchar(q,sizeof(q),0);
fillchar(tham,sizeof(tham),false);
tham[b[i]]:=true;
bfs(s);
if not co then max:=max+1
else
co:=false;
end;
end;
procedure xuat;
var f:text;
begin
assign(f,fo);
rewrite(f);
writeln(f,max);
close(f)
end;
begin
nhap;
xuli;
xuat;
end.
|
|
|
|
Đã lưu IP
|
|
LiF.Typn
|
|
Đã khóa chức năng gửi bài. |
|
Trả lời: STNODE - Ai ACC được 100đ chỉ giáo giùm mình với! 8 năm, 1 tháng trước
|
(+0)
|
Ta có đường đi ngắn nhất từ s->t là E=s->a1->a2->a3..->t;
Khi đó nếu tồn tại 1 đường đi từ ai->b1,b2,b3...bi->aj mà (b1,b2..) không thuộc E thì suy ra các đỉnh a[i+1],a[i+2]...A[j-1] không phải là nút xung yếu.
Mình đã Ac theo cách này
|
|
|
Đã lưu IP
|
|
Đã khóa chức năng gửi bài. |
|