HDU 2236 无题II 题目链接 思路:行列仅仅能一个,想到二分图,然后二分区间长度,枚举下限.就能求出哪些边是能用的,然后建图跑二分图,假设最大匹配等于n就是符合的 代码: #include <cstdio> #include <cstring> #include <vector> #include <algorithm> using namespace std; const int N = 105; int t, n, x[N][N], have[N…
题目内容 这是一个简单的游戏,在一个\(n×n\)的矩阵中,找\(n\)个数使得这\(n\)个数都在不同的行和列里并且要求这\(n\)个数中的最大值和最小值的差值最小. 输入格式 输入一个整数\(T\),表示\(T\)组数据. 对于每组数据第一行输入一个正整数\(n(1\le n\le 100)\)表示矩阵的大小. 接着输入\(n\)行,每行\(n\)个数\(x(0\le x\le 100)\). 输出格式 对于每组数据输出一个数表示最小差值. 样例输入 1 4 1 1 1 1 2 2 2 2…
题目链接: pid=2236">Hdu 2236 解题思路: 将行和列理解为二分图两边的端点,给出的矩阵即为二分图中的全部边, 假设二分图能全然匹配,则说明 不同行 不同列的n个元素 区间为(min_edge.max_edge),这些edge是指构成全然匹配的那些边 题目须要求解最小区间长度 我们 能够 二分区间长度(0~100),每次枚举区间的下界 最后得到的maxl 即为答案 代码: #include<iostream> #include<cstdio> #in…
题目 这是一个简单的游戏,在一个n*n的矩阵中,找n个数使得这n个数都在不同的行和列里并且要求这n个数中的最大值和最小值的差值最小. 输入格式 输入一个整数\(T\)表示\(T\)组数据. 对于每组数据第一行输入一个正整数\(n(1<=n<=100)\)表示矩阵的大小. 接着输入\(n\)行,每行\(n\)个数\(x(0<=x<=100)\). 输出格式 对于每组数据输出一个数表示最小差值. 输入样例 1 4 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 输出格式…
HDU 2236 无题Ⅱ 题目大意 这是一个简单的游戏,在一个\(n*n\)的矩阵中,找n个数使得这n个数都在不同的行和列里并且要求这n个数中的最大值和最小值的差值最小. solution 暴枚\(i,j\),很容易想到每个\(i\)应一个\(j\),所以可以考虑二分图最大匹配 再看极差,显然具有单调性,答案一定处于这个区间内 所以我们采用二分的方法搜索答案,对每个\(mid\)进行\(judge\)就好了 剩下的就是码力问题了-- #include<bits/stdc++.h> using…
题意:给出n个点   要求取k个点  这k个点中  距离最小的两个点要求距离最大 拿到手看不出是最大团  也看不出是二分答案(第一次用) 因为答案必然存在 一定有一个最值  所以用二分答案来做 最大距离为根号二乘10000  所以R=20000 且R-L>1e-4: #include<bits/stdc++.h> using namespace std; #define N 60 int n; int mp[N][N]; int ans; int alt[N][N]; int Max[N…
题目大意 POJ链接 有一个\(X×Y\)的房间,X代表墙壁,D是门,.代表人.这个房间着火了,人要跑出去,但是每一个时间点只有一个人可以从门出去. 问最后一个人逃出去的最短时间,如果不能逃出去,输出impossible. 输入格式 第一行一个整数\(T\),表示有T组数据. 每组数据,第一行两个数字\(Y,X\),接下来有一个\(X×Y\)的图. 输出格式 \(T\)行答案,表示最后一个人逃出去的最短时间,如果不能逃出去,输出impossible. 数据范围 \(3\le Y\le X\le…
题目链接 一开始是想不断的把边插进去,然后再去考虑我们每次都加进去边权为1的边,直到跑到第几次就没法继续跑下去的这样的思路,果不其然的T了. 然后,就是想办法咯,就想到了二分答案. 首先,我们一开始处理关系,(一开始看错了男女关系,结局懵逼了好久),注意输入是女选男.然后,就是去处理咯,我们先要去考虑,女生之间为朋友的话,又由于朋友关系是可以推的,所以我们不妨用并查集去维护这层关系,并且把总的关系推上到并查集的根上去. 然后,就是怎么样去想这个二分答案的过程了,我们可以假设玩了x轮,这么就代表了…
2402: 陶陶的难题II Time Limit: 40 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 68  Solved: 45[Submit][Status] Description Input 第一行包含一个正整数N,表示树中结点的个数. 第二行包含N个正实数,第i个数表示xi (1<=xi<=10^5). 第三行包含N个正实数,第i个数表示yi (1<=yi<=10^5). 第四行包含N个正实数,第i个数表示pi (…
HDU 3586 『Link』HDU 3586 『Type』二分答案+树形DP判定 ✡Problem: 给定n个敌方据点,1为司令部,其他点各有一条边相连构成一棵树,每条边都有一个权值cost表示破坏这条边的费用,叶子节点为前线.现要切断前线和司令部的联系,每次切断边的费用不能超过上限limit,问切断所有前线与司令部联系所花费的总费用少于m时的最小limit.第一行输入的n,m;之后是n-1条边,我们要求最小的limit.\(1\leq n\leq 1000,1\leq m\leq 10^6\…