摘要: 题目大意 有 n(1<=n<=10^5) 个连续的 stick,编号从 1 到 n。每根 stick 有一个权值,起初的时候全是 1 有 m(1<=m<=10^5) 个操作,每次操作格式如下: L R val:把第 L 个到第 R 个,每根 stick 的权值变为 val 做法分析 使用线段树标记一 阅读全文
posted @ 2013-03-17 00:49 jianzhang.zj 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 题目大意 给你 n(1<=n<=10^5) 个数,m(1<=m<=10^5) 个询问,每个询问的格式如下 L R H:从第 L 个数到第 R 个数中,小于等于 H 的数有多少个 做法分析 建立划分树 每次 query 的时候,二分答案即可,即二分这个区间中有多少个小于等于 H 的数 参考代码 1 # 阅读全文
posted @ 2013-03-17 00:40 jianzhang.zj 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 题目大意 一个有向图 n(1<=n<=20000) 个点 m(0<=m<=50000) 条边 问至少添加几条边,使得整个图是一个强连通图 做法分析 先缩点,然后找出 DAG 中入度为 0 的点的个数和出度为 0 的点的个数,输出较大者(PS:这是一个结论) 参考代码 1 #include <iost 阅读全文
posted @ 2013-03-17 00:30 jianzhang.zj 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 题目大意 给了一个含有 n(0<n<=50000) 个节点的有向图,图中的两点之间的通信时要付出代价的(经过的边权之和),但是如果这两个点之间相互可达,代价为 0 问,从给定的节点向其他所有的点通信,所花费的最小代价是多少? 做法分析 先对原图缩点,形成一个 DAG,给的那个定点显然是 DAG 中入 阅读全文
posted @ 2013-03-17 00:20 jianzhang.zj 阅读(814) 评论(0) 推荐(0) 编辑