UVA 12167 - Proving Equivalences
题目链接
题意:给定一些已经存在的等价性证明,要求全部等价,需要在多最少几次证明
思路:先求出强连通分量,然后进行缩点,在缩点后的图上统计入度和出度为0结点的最大值,就是需要加的边数,注意如果整个图已经是强连通,就直接是答案
代码:
#include
#include
#include
#incl...
分类:
其他好文 时间:
2014-08-29 22:45:40
阅读次数:
279
题目链接
题意:求n^n的个位数的值。
思路:快速幂求值
代码:
#include
#include
#include
#include
#include
using namespace std;
typedef long long ll;
ll a, b, n, m;
struct mat{
ll s[2][2];
mat() {...
分类:
Web程序 时间:
2014-08-29 22:41:18
阅读次数:
229
题意: 一个树形图,有个二货商人,旅游时候还想着赚钱!从某个地方到另一个地方时,可以旅途中进一批货(应该人手不够,手里只能拿一批),然后在旅途中卖掉,求最大能赚多少钱。思路: 赤裸裸的LCA,ans(x,y)=max(up(x,lca),down(lca,y),maxp(lca,y)-min(l.....
分类:
其他好文 时间:
2014-08-29 22:32:08
阅读次数:
236
题意:
婚礼上新郎新娘坐在桌子两侧 新娘只能看见对面的人 已知一些人有XX关系… 新娘不想看见有关系的同时坐在对面 问 满足条件的情况下 新娘这边做的人是谁
思路:
新郎那一边的约束最多 有利于解题 那么就变成了 一个人要不要坐新郎这边的2-sat问题 因此可以先求新郎这边的人 然后反一下就是新娘这边的了 注意 新郎是必选点 而且 不能选和新郎有XX关系的…
...
分类:
其他好文 时间:
2014-08-29 21:27:58
阅读次数:
208
Sort a linked list using insertion sort.
【题意】
用插入排序对一个链表进行排序。
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) {
...
分类:
其他好文 时间:
2014-08-29 21:26:48
阅读次数:
233
UVA 1108 - Mining Your Own Business
题目链接
题意:给定一个连通图,设置一个些安全点,使得其他任意一些节点崩塌后,其他点都能到一个安全点,问安全点最小数量和情况数
思路:
#include
#include
#include
#include
#include
using namespace std;
const int N ...
分类:
其他好文 时间:
2014-08-29 21:26:28
阅读次数:
219
题意:
项链散了 每个珠子前端后端分别有颜色 在项链中 相邻的珠子的相邻的那一端颜色相同 问 找到的珠子能不能重新串起一根项链
思路:
比较经典的欧拉回路题 Fleury算法解决问题
代码:
#include
#include
#include
using namespace std;
#define M 60
int n,ans,top,m,t,T;
int Edge[M...
分类:
其他好文 时间:
2014-08-29 20:07:58
阅读次数:
232
题意:
给你半个矩阵 如果(i,j)的位置是'-' 则说明sum[i...j]0 如果是'0' 说明sum=0 给出一种满足这个矩阵的序列 序列元素绝对值在10以内
思路:
很容易想到的是将sum[i...j]转化为sum[j]-sum[i-1] 即用前缀和来表示 那么题中的矩阵就可以转化成前缀和之间的大小比较 也就是说 我们可以通过将前缀和当成点 将大小关系作为边...
分类:
其他好文 时间:
2014-08-29 20:07:28
阅读次数:
236
题意:
一些隧道组成矿井 现在要修建尽量少的逃生通道 使得无论哪里发生事故 所有人均能逃出 求方案数
思路:
这道题比较容易联想到割点 因为只有这种点出事矿井才会不连通 那么首先就找出所有割点
分析最少要建几个逃生通道 那当然是每个连通块各一个 因此需要把求出连通块顶点数之积
最后考虑特殊情况 没有割点 那么随便两个地方建就好了 不能建一个 万一就那里出事了呢...
分类:
其他好文 时间:
2014-08-29 20:06:58
阅读次数:
272
题意:
有n个宇航员 他们需要完成A、B、C三种任务 年龄>=平均年龄的人可以做A和C 年龄
思路:
一类人有2种选择而且必须选1个 因此想到2-sat 根据年龄和讨厌关系来建边 之后先做可行性判断 确定可以后 求出任意一组可行解 不需要字典序最小
代码:
#include
#include
#include
#include
using namespace std;
...
分类:
其他好文 时间:
2014-08-29 20:06:48
阅读次数:
270