bzoj1916[Usaco2010 Open]冲浪
2017-05-13 15:37
387 查看
一开始吓得我以为要用期望,后来发现好像不用。。
然后就想歪了,一看最大最小直奔二分,结果发现好像并不可做(sb的不行。。)
后来sb的我去看了一波题解才发现这是个水题,,智商啊woc。。。
设f(x,y)表示走到x,已经失控了y次或者还剩y次失控,直接通过dfs推就可以了,两种都是可以得。
然后就想歪了,一看最大最小直奔二分,结果发现好像并不可做(sb的不行。。)
后来sb的我去看了一波题解才发现这是个水题,,智商啊woc。。。
设f(x,y)表示走到x,已经失控了y次或者还剩y次失控,直接通过dfs推就可以了,两种都是可以得。
#include<cstdio> #include<algorithm> #include<cstring> #include<iostream> #define fo(i,a,b) for(int i=a;i<=b;i++) #define fd(i,a,b) for(int i=a;i>=b;i--) #define inf 0x3f3f3f3f3f3f3f3fll using namespace std; const int N=3e5+5; typedef long long ll; int n,m,k; int head ,next ,go ; ll val ; ll w ,dp [11]; int tot; inline void add(int x,int y,int z) { go[++tot]=y; val[tot]=z; next[tot]=head[x]; head[x]=tot; } inline void init() { memset(head,0,sizeof(head[0])*(n+1)); tot=0; fo(i,1,m) { int x,y,z; scanf("%d%d%d",&x,&y,&z); add(x,y,z); } } inline ll dfs(int x,int y) { if (dp[x][y]!=inf)return dp[x][y]; ll ans=0,mn=inf; for(int i=head[x];i;i=next[i]) { ans=max(ans,dfs(go[i],y)+val[i]); if (y<k)mn=min(mn,dfs(go[i],y+1)+val[i]); } ans=min(ans,mn); return dp[x][y]=ans; } inline void solve() { memset(dp, 0x3f, sizeof(dp)); memset(dp ,0,sizeof(dp )); printf("%lld\n",dfs(1,0)); } int main() { scanf("%d%d%d",&n,&m,&k); init(); solve(); return 0; }
相关文章推荐
- BZOJ1916: [Usaco2010 Open]冲浪
- BZOJ 1916 [Usaco2010 Open]冲浪
- BZOJ_1916_[Usaco2010 Open]冲浪_分层图+拓扑排序+DP
- BZOJ1915 [Usaco2010 Open]奶牛的跳格子游戏
- BZOJ1915: [Usaco2010 Open]奶牛的跳格子游戏
- 【BZOJ】1914: [Usaco2010 OPen]Triangle Counting 数三角形
- BZOJ1914 [Usaco2010 OPen]Triangle Counting 数三角形
- BZOJ 1915 [Usaco2010 Open]奶牛的跳格子游戏
- bzoj1914[Usaco2010 OPen]Triangle Counting 数三角形 极角排序+乱搞
- 【计算几何】【极角序】【二分】bzoj1914 [Usaco2010 OPen]Triangle Counting 数三角形
- [BZOJ1914][Usaco2010 OPen]Triangle Counting 数三角形
- BZOJ 1914: [Usaco2010 OPen]Triangle Counting 数三角形
- BZOJ 1915: [Usaco2010 Open]奶牛的跳格子游戏 单调队列优化dp
- bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形【叉积+极角排序+瞎搞】
- BZOJ1914: [Usaco2010 OPen]Triangle Counting 数三角形
- bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形
- BZOJ 1914 [Usaco2010 OPen]Triangle Counting 数三角形
- bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形 容斥
- 【BZOJ1915】[Usaco2010 Open]奶牛的跳格子游戏 DP+单调队列
- 【bzoj1914】[Usaco2010 OPen]Triangle Counting 数三角形