【题意】
给一张图,每个点有一个ATM机,而其中的部分点是酒吧(可作为终点)。
抢掠计划就是从起点(1号点)出发,到终点的途中,将ATM机中的钱抢走。
问最多能抢到多少钱。
【题解】
很显然,由于图可能有环,所以自然地想到了SCC+DP。
题目不难,但数据很大,堆栈会溢出。表示懒得模拟堆栈了。
【代码】
{$M 100000000}
uses math;
type
edge=record
x,y,next:longint;
end;
var
e,ee:array[1..500000] of edge;
h,s,b,v,low,dfn,ans,aa,g,c,q,a:array[0..500000] of longint;
i,j,k,m,n,st,f,r,tans,tt,t,times,tot,xx,x,y,ttt:longint;
procedure add(x,y:longint);
begin
inc(tt);
e[tt].x:=x;e[tt].y:=y;
e[tt].next:=h[x];h[x]:=tt;
end;
procedure tarjan(x:longi

该博客介绍了APIO2009中的一道图论问题,涉及从起点出发,途经ATM机并尽可能多地抢掠金钱。博主提出使用强连通分量(SCC)结合动态规划(DP)来解决,同时指出由于数据规模大,直接模拟堆栈可能导致溢出,因此需要避免这种做法。
最低0.47元/天 解锁文章
653

被折叠的 条评论
为什么被折叠?



