/*
题意:n个任务,有某些任务要在一些任务之前完成才能开始做!
第k个任务的约束只能是1...k-1个任务!问最终需要最少的时间完成全部的
任务!
思路:第i个任务要在第j个任务之前做,就在i,j之间建立一条有向边!
如果第i个任务之前没有任务,那么就是0和i建立一条有向边!
最后求一条0到所有节点距离的最大值!不一定是最后一个任务完成的
时间是最长的时间.......
*/
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<queue>
#define N 10005
using namespace std; struct Edge{
int v, w;
Edge(){} Edge(int v, int w){
this->v=v;
this->w=w;
}
}; queue<int>q;
vector<Edge>g[N];
int d[N];
int vis[N];
int maxT;
void spfa(){
q.push();
vis[]=;
while(!q.empty()){
int u=q.front();
q.pop();
vis[u]=;
int len=g[u].size();
for(int i=; i<len; ++i){
int v=g[u][i].v, w=g[u][i].w;
if(d[v]<d[u]+w){
d[v]=d[u]+w;
if(maxT<d[v]) maxT=d[v];
if(!vis[v]){
q.push(v);
vis[v]=;
}
}
}
}
}
int main(){
int n;
scanf("%d", &n);
for(int i=; i<=n; ++i){
d[i]=vis[i]=;
int tt, m;
scanf("%d%d", &tt, &m);
if(m==) g[].push_back(Edge(i, tt));
while(m--){
int v;
scanf("%d", &v);
g[v].push_back(Edge(i, tt));
}
}
maxT=;
spfa();
printf("%d\n", maxT);
return ;
}
 /*
思路:其实是一个简单的dp题目!
*/
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define N 10005
using namespace std;
int dp[N];
int main(){ int n, maxT=;
scanf("%d", &n);
for(int i=; i<=n; ++i){
int w, m;
scanf("%d%d", &w, &m);
if(m==) dp[i]=w;//不仅仅只有1节点没有约束节点 while(m--){
int v;
scanf("%d", &v);
dp[i]=max(dp[i], dp[v]+w);
}
if(maxT<dp[i]) maxT=dp[i];
}
printf("%d\n", maxT);
return ;
}

poj1949Chores(建图或者dp)的更多相关文章

  1. Fantasia (点强连通分量建图 + 树形DP)

    简化一下题意,我们先看成一副强连通的图,这时候应该是最简单了,去点任意点都是其他的乘积.那再加强一点难度,改为两个强连通图连接的非强连通图呢?那应该就是找出关键的那个点,并求出两边的乘积.但是一个一个 ...

  2. [十二省联考2019]字符串问题——后缀自动机+parent树优化建图+拓扑序DP+倍增

    题目链接: [十二省联考2019]字符串问题 首先考虑最暴力的做法就是对于每个$B$串存一下它是哪些$A$串的前缀,然后按每组支配关系连边,做一遍拓扑序DP即可. 但即使忽略判断前缀的时间,光是连边的 ...

  3. bzoj5017 炸弹 (线段树优化建图+tarjan+拓扑序dp)

    直接建图边数太多,用线段树优化一下 然后缩点,记下来每个点里有多少个炸弹 然后按拓扑序反向dp一下就行了 #include<bits/stdc++.h> #define pa pair&l ...

  4. BZOJ 1924 && Luogu P2403 [SDOI2010]所驼门王的宝藏 恶心建图+缩点DP

    记住:map一定要这么用: if(mp[x[i]+dx[j]].find(y[i]+dy[j])!=mp[x[i]+dx[j]].end()) add(i,mp[x[i]+dx[j]][y[i]+dy ...

  5. [SDOI2010] 所驼门王的宝藏 [建图+tarjan缩点+DAG dp]

    题面传送门: 传送门 思路: 看完题建模,容易得出是求单向图最长路径的问题 那么把这张图缩强联通分量,再在DAG上面DP即可 然而 这道题的建图实际上才是真正的考点 如果对于每一个点都直接连边到它所有 ...

  6. 一个神秘的oj2587 你猜是不是dp(线段树优化建图)

    哇 这难道不是happiness的翻版题嘛? 从\(S\)向一个点连染成白色的收益 从这个点向\(T\)连染成黑色的收益 对于额外的收益,建一个辅助点,跟区间内的每个点连\(inf\),然后向S/T, ...

  7. 【BZOJ-4289】Tax 最短路 + 技巧建图

    4289: PA2012 Tax Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 168  Solved: 69[Submit][Status][Dis ...

  8. [NOI2008][bzoj1061] 志愿者招募 [费用流+巧妙的建图]

    题面 传送门 思路 引入:网络流? 看到这道题,第一想法是用一个dp来完成决策 但是,显然这道题的数据并不允许我们进行dp,尤其是有10000种志愿者的情况下 那么我们就要想别的办法来解决: 贪心?这 ...

  9. BZOJ1924 [Sdoi2010]所驼门王的宝藏 【建图 + tarjan】

    题目 输入格式 第一行给出三个正整数 N, R, C. 以下 N 行,每行给出一扇传送门的信息,包含三个正整数xi, yi, Ti,表示该传送门设在位于第 xi行第yi列的藏宝宫室,类型为 Ti.Ti ...

随机推荐

  1. LightHttpd源码分析

    源码:https://github.com/EZLippi/Tinyhttpd 要在Linux中编译,无需像代码注释所说那样: /* This program compiles for Sparc S ...

  2. SAP HANA企业级培训系列课程<第一部分>

    No. 课程 备注 1 HANA概述 HANA 特点 2 HANA Server & Studio & Client 认识HANA Server \Client\ Studio, 熟悉 ...

  3. 利用html5 canvas实现纯前端上传图片的裁剪

    今天跟大家分享一个前端裁剪图片的方法.许多网站都有设置用户头像的功能,用户可以选择一张本地的图片,然后用网站的裁剪工具进行裁剪,然后设置大小,位置合适的头像.当然,网上也有一些用js写的诸如此类裁剪的 ...

  4. C语言标准定义的32个关键字

    关键字                    意      义 auto                      声明自动变量,缺省时编译器一般默认为auto int                 ...

  5. TableLayout表格布局详解

    一.Tablelayout简介 Tablelayout类以行和列的形式对控件进行管理,每一行为一个TableRow对象,或一个View控件.当为TableRow对象时,可在TableRow下添加子控件 ...

  6. Java虚拟机7:内存分配原则

    前言 对象的内存分配,往大的方向上讲,就是在堆上分配,少数情况下也可能会直接分配在老年代中,分配的规则并不是百分之百固定的,其细节决定于当前使用的是哪种垃圾收集器组合,当然还有虚拟机中与内存相关的参数 ...

  7. 设计模式之美:Template Method(模板方法)

    索引 意图 结构 参与者 适用性 效果 相关模式 实现 实现方式(一):Template Method 模式结构样式代码. 意图 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中. Templat ...

  8. 一个App完成入门篇(三)-完善主框架

    本节教程将继续带领大家完善教学demo 导入项目 完善主框架 完成viewShower子视图 打开新页 启动动画 将要学习的demo效果图如下所示 1. 如何导入完整项目 本节示例demo请参考下载地 ...

  9. 【MVC】bootstrap-paginator 分页插件笔记

    bootstrap-paginator基于bootstrap框架,使用起来非常简单.github地址:https://github.com/lyonlai/bootstrap-paginator 在b ...

  10. C#Light for Unity 新例子

    近来有好几位询问C#Lite在Unity中使用的问题 我专门为C#Lite制作了 for Unity的新例子 ,这个例子名为languagetest 包含17个语言特性测试的文件 其中_6004_展示 ...