- 博客(6)
- 收藏
- 关注
原创 洛谷1155 NOIP2008 双栈排序【二分图染色】
【正确解法】这道题大概可以归结为如下题意:有两个队列和两个栈,分别命名为队列1(q1),队列2(q2),栈1(s1)和栈2(s2)。最初的时候,q2,s1和s2都为空,而q1中有n个数(n,为1~n的某个排列。现在支持如下四种操作:a操作,将 q1的首元素提取出并加入s1的栈顶。b操作,将s1的栈顶元素弹出并加入q1的队列尾。c操作,将 q1的首元素提取出并加入s2的栈顶。
2017-09-16 22:34:47 362
原创 bzoj2330 SCOI2011 糖果 【差分约束】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2330结题报告:裸的差分约束,本应建负边求最短路,但为了好处理建反图正边,再从0点向每个点建一条长度为1的边确保每个人都至少拿一个糖,最后求最长路即可。注意数据要卡建边方式,如果Te了可以参考我的建边方式。#include<iostream>#include<cstdio>#include
2017-09-15 20:46:22 313
原创 bzoj2095 bridges 【网络流判欧拉回路】
题意: 给出一个n个点m条边的无向图,每个边有一正一反两个权值; 现要从点1出发,对每条边经过且仅经过一次; 求一种方案使经过的最大权值最小; (bzoj)输出这个权值即可;题解: 最小值最大显然二分; 二分之后就转化成了一个判定性问题; 判定性问题就是求这个图中是否存在欧拉回路; 而最糟糕的是。。这是混合图。。。 有向图的欧拉回路:每个点的入度=出度 无向图的欧拉回路:每个点的
2017-09-12 21:46:48 263
原创 bzoj1370 团伙 【并查集】
题目描述在某城市里住着 n 个人,任何两个认识的人不是朋友就是敌人,而且满足: 1、我朋友的朋友是我的朋友; 2、我敌人的敌人是我的朋友; 所有是朋友的人组成一个团伙。告诉你关于这 n 个人的 m 条信息,即某两个人是朋友,或者某两个人是敌人,请你编写一个程序,计算出这个城市最多可能有多少个团伙?输入格式第 1 行为 n 和 m ,其中 1输出格式一个整数,表示这 n 个人最多可能有几个团伙。
2017-09-09 16:22:41 418
原创 bzoj1085 [SCOI2005]骑士精神 【迭代加深搜索】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1085解题思路很容易想到广搜,但空间会超,而深搜又会超时,所以我们用迭代加深搜索,它比广搜慢,比深搜快,但空间和深搜一样,所以可以接受。估价函数least(v)表示从当前状态v到目标状态所需的最小步数,显然是还未归位的棋子数减一;首先枚举所需步数dep,再dfs,若step(v)+least(
2017-09-06 21:35:49 400
原创 bzoj 1857 [SCOI2010]传送带【三分套三分】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1857解题报告容易发现,假设AB上的点已确定,那么CD上取点算出的时间应是一个单峰函数(感觉就行),反过来也一样,所以我们可以三分套三分,先三分AB上的点作为固定点,再三分CD上的点算出该固定点的最优值作为三分AB的依据即可。 注意两条直线要化成一般式Ax+By+C=0的形式,不能用y=k
2017-09-05 21:23:13 266
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人