上一页 1 ··· 3 4 5 6 7 8 9 下一页
摘要: 描述 【简化版题意】给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树。求增加的边的权值总和最小是多少。 我们一共有N个OIER打算参加这个泼水节,同时很凑巧的是正好有N个水龙头(至于为什么,我不解释)。N个水龙头之间正好有N-1条小道,并且每个水龙头 阅读全文
posted @ 2019-03-18 17:08 海边微风起 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给出一个序列a, 求a的最长上升子序列 输入输出格式 输入格式: 第一行是一个数n, 接下来一行,每行为n个数 输出格式: 一个数,即最长上升子序列的长度 朴素版的lis是O(N ^ 2)的做法,这里就不在给出;当数据大时很容易被卡,通过二分优化 + 贪心可以优化成为O(NlogN),首先 阅读全文
posted @ 2019-03-13 13:52 海边微风起 阅读(585) 评论(0) 推荐(0) 编辑
摘要: 题目描述 小C最近学了很多最小生成树的算法,Prim算法、Kurskal算法、消圈算法等等。正当小C洋洋得意之时,小P又来泼小C冷水了。小P说,让小C求出一个无向图的次小生成树,而且这个次小生成树还得是严格次小的,也就是说:如果最小生成树选择的边集是EM,严格次小生成树选择的边集是ES,那么需要满足 阅读全文
posted @ 2019-03-11 13:12 海边微风起 阅读(460) 评论(2) 推荐(1) 编辑
摘要: 一个点只能有两个状态,要么连线,要么不连;所以让新加入的这个点和所有边连线,能将图分成两个部分,所以此时的方案数就是两个部分的累计和;还有一种情况是这个点不和任何点相连,所以要单独加上f[i - 1]; 阅读全文
posted @ 2019-03-08 13:34 海边微风起 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 一道类似于dp的topsort,求出前缀和和dp式就很好写了 阅读全文
posted @ 2019-03-03 16:37 海边微风起 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 一道很水的topsort,唉?怎么交了14遍...(某人用我的代码刚好卡过,我怎么过不去...【鄙视】【鄙视】【鄙视】) 以下代码会很快↓↓↓ 阅读全文
posted @ 2019-03-01 13:42 海边微风起 阅读(200) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std; #define p make_pair #define ll long long #define INF 0x3f3f3f3f #define MAXN 1000010 #define MAXM 1010 inline int read() { int x = 0,ff = 1;char ch = getcha... 阅读全文
posted @ 2019-02-18 20:44 海边微风起 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 求的是最大强连通分量且字典序最小 阅读全文
posted @ 2019-02-16 20:22 海边微风起 阅读(134) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std; #define INF 0x3f3f3f3f #define MAXN 1000010 #define MAXM 5010 inline int read() { int x = 0,ff = 1;char ch = getchar(); while(!isdigit(ch)) { if... 阅读全文
posted @ 2019-02-16 18:45 海边微风起 阅读(246) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std; #define INF 0x3f3f3f3f #define MAXN 1000010 #define MAXM 5010 inline int read() { int x = 0,ff = 1;char ch = getchar(); while(!isdigit(ch)) { if... 阅读全文
posted @ 2019-02-16 18:02 海边微风起 阅读(202) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 下一页