1150专题

HDU-1150 HK二分图最小点覆盖

//二分图最小点覆盖 = 二分图最大匹配#include<stdio.h>#include<string.h>#include<queue>using namespace std;const int maxn = 105;const int inf = 1<<30;int nx,ny,m;int dis;int map[maxn][maxn];int cx[maxn],cy[m

hdu 题目1150 Machine Schedule(最小点覆盖)

http://acm.hdu.edu.cn/showproblem.php?pid=1150 没有考虑从0号开始o(╯□╰)o,但是AC了,最小点覆盖,工作看做边,A的模式为X点集合, B的模式为Y点集合, 需要用最少的点,做完所有工作(关联到所有边),即最小点覆盖 还有,题目上没说x,y的范围。(如果就是0,1,2,3,....)的话,只要判断link[y]是否为0即可,如果有的话

HDOJ 1150 Machine Schedule 二分匹配

模型建立:机器A的n个状态表示成X集合中得n个点,机器B的m个状态表示成Y集合的m个点。当一个任务可以用机器A的i状态,和机器B的j状态解决的时候,我们连接X集合中的第i个结点和Y集合中的第j个结点。所有的任务都完成意味着所有的边都被选择到。因此这个题就变成求最小覆盖点集,即最大匹配数。注意,我们不考虑能用机器A或机器B的0状态来解决的任务,因为这样的任务一开始就都被解决了。 #includ

POJ 1150 The Last Non-zero Digit 阶乘最后非0位

转自:http://www.cppblog.com/abilitytao/archive/2009/10/31/99907.html 这个题怎么来做呢?先别急,我们先来讨论一下下面几个子问题: 1.如何求出n阶乘中质因数x(比如说5)出现的次数? 比如说15的阶乘 :1*2*3*4*5*6*7*8*9*10*11*12*13*14*15 由于5这个质因数只在5的倍数里面才出现,所以我从5,1

Codeforces Contest 1150 D Three Religions —— DP求三个子序列能否构成字符串的子序列

This way 题意: 给你一个总的字符串,然后现在有三个空字符串,有q次操作,每次操作都会往三个字符串某一个字符串的末尾添加或者删除一个字符,问你这三个字符串按照他们的序列方式拼在一起能否组成总的字符串中的某一个序列。 题解: 最近脑子不好了,已经想不到三个序列如何拼成大的序列了,其实很简单,因为三个序列最大每个序列只有250的长度。 我们设dp[i][j][k]表示第一个串到第i位,

hdu 1150 Machine Schedule

中心思想 转化为二分图最小顶点覆盖问题。 二分图最小顶点覆盖数=二分图最大匹配数 那么二分图到底是哪两部分呢? 一部分是机器A ,一部分是机器B, 如果某个任务,可由 A 的Xi 和 B 的 Yi模式完成。则在Xi 和 Yi之间连一条线,有向图,A—>B 。 所以 二分图左部分集合就是机器A的模式的集合,右部分是机器B模式集合。模式从1 开始,排除模式为0的元素。 详细参考博客:http

UVa 712/POJ 1105/ZOJ 1150 S-Trees(用数组模拟二叉树)

712 - S-Trees Time limit: 3.000 seconds http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=104&page=show_problem&problem=653 http://poj.org/problem?id=1105 http://acm

xtu oj 1150 n!进制 2.0

题目描述 n!进制是指每i位的权值是(i+1)!,每一位的系数为0~i+1。 比如n!进制的21 = 2*2! + 1*1! = 5。给你一个10进制数,求其n!进制的值。 输入 每行一个10进制的整数n,0≤n≤3,628,799。 输出 每行输出一个样例的结果。 样例输入 01101003628799 样例输出 011204020987654321 AC代码

【状态压缩 搜索】SSL_1150 密室

题意 有 N N N个房间, M M M个传送门, K K K种钥匙,每个房间有一些钥匙,每个传送门可以从一个房间传到另一个房间,需要一定的钥匙才能使用传送门,求出经过最少的传送门能从 1 1 1号房间到达 N N N号房间。 思路 压缩钥匙的状态,然后 B F S BFS BFS就行了。 代码 #include<queue>#include<cstdio>#include<cst

XTU-OJ 1150-n!进制

题目描述 n!进制是指每i位的权值是(i+1)!,每一位的系数为0~i+1。 比如n!进制的21 = 2*2! + 1*1! = 5。给你一个10进制数,求其n!进制的值。 输入 每行一个10进制的整数n,0≤n≤3,628,799。 输出 每行输出一个样例的结果。 样例输入 01101003628799 样例输出 011204020987654321 解题思路:本题一

XTU-OJ 1150-n!进制

题目描述 n!进制是指每i位的权值是(i+1)!,每一位的系数为0~i+1。 比如n!进制的21 = 2*2! + 1*1! = 5。给你一个10进制数,求其n!进制的值。 输入 每行一个10进制的整数n,0≤n≤3,628,799。 输出 每行输出一个样例的结果。 样例输入 01101003628799 样例输出 011204020987654321 解题思路:本题一

湖南中医药大学OJ—1150到1159

目录 1150: 习题4-6 分段函数求值1151: 习题4-8-1 百分制成绩转换为等级1152: 习题4-8-2 百分制成绩转换为等级1153: 习题4-9-1 判断正整数位数1154: 习题4-9-2 求正整数各位上的数字1155: 习题4-9-3 逆序输出正整数各位上数字1156: 习题4-10-1 奖金计算1157: 习题4-10-2 奖金计算1158: 习题4-11 4个整数从小