1001 degree

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=6380

并查集向图中加点,分别记录与初始度数最多的点 直接相连的点数、独立的点数;则间接相连的点数 = n-1-直接相连的点数;

 #include<iostream>
#include<algorithm>
#include<set>
#include<map>
using namespace std; int T,n,m,k;
int f[], a[]; int find(int x) {
if(f[x]!=x)
f[x]=find(f[x]);
return f[x];
} void Union(int x, int y) {
int w = find(x);
int s = find(y);
f[w] = s;
} int main()
{
cin>>T;
while(T--)
{
cin>>n>>m>>k;
for(int i=; i<n; i++) {
a[i]=; f[i]=i;
}
int maxn=, maxx=;
for(int x,y,i=; i<m; i++) {
cin>>x>>y;
Union(x, y);
if(x==y) continue;
a[x]++, a[y]++;
if(a[x]>maxn) maxx=x, maxn=a[x];
if(a[y]>maxn) maxx=y, maxn=a[y];
} int root = find(maxx);
for(int i=; i<n; i++) {
int t = find(i);
if(t==i && t!=root) maxn++;
} int dir = n-maxn-;
if(k>=dir) maxn=n-;
else maxn+=k; if(!n) maxn = ;
cout<<maxn<<endl;
}
return ;
}

1004 p1m2

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=6383

找出数列中最大值和最小值,二分枚举答案,对于每一个答案都循环计算一次;思想同二分查找,每次答案所在区间缩小一半;

 #include<iostream>
#include<algorithm>
using namespace std; #define min(a,b) a>b?b:a
#define LL long long
const int N = ;
LL T, n, a[N]; int main()
{
ios::sync_with_stdio(false);
cin>>T;
while(T--)
{
cin>>n;
LL minn=1e9, maxn=-;
for(int i=; i<n; i++) {
cin>>a[i];
minn = min(a[i], minn);
maxn = max(a[i], maxn);
} while(minn <= maxn) {
LL mid = (minn+maxn)/, tmp = ;
for(int i=; i<n; i++) {
if(a[i]>mid) tmp += (a[i]-mid)/;
else tmp += a[i]-mid;
}
if(tmp<)
maxn = mid-;
else
minn = mid+;
}
cout<<maxn<<endl;
} return ;
}

1006 rect

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=6385

假设有交叉线的情况存在,对这种假设列满足条件的不等式,发现矛盾,所以不存在交叉线情况;

 #include<iostream>
using namespace std; #define min(a,b) a>b?b:a
#define LL long long
int T;
LL mx, my, n; int main()
{
cin>>T;
while(T--) {
cin>>mx>>my>>n; LL ans=;
int x,y;
for(int i=; i<n; i++) {
cin>>x>>y;
if(x<=mx/ && y<=my/) ans += min(x,y);
else if(x>=mx/ && y<=my/) ans += min(mx-x, y);
else if(x>=mx/ && y>=my/) ans += min(mx-x, my-y);
else if(x<=mx/ && y>=my/) ans += min(x, my-y);
}
cout<<ans<<endl;
} return ;
}

【2018百度之星初赛 B】1001并查集 1004二分 1006不等式的更多相关文章

  1. 2018百度之星初赛B - A,D,F

    总结:这一次的百度之星之行到这里也就结束了,充分的认识到了自己的不足啊...果然还是做的题太少,,见识的题型也还太少,对于STL的掌握还是不够到位啊!!(STL大法是真的好,建议大家认认真真的好好学学 ...

  2. 2018 百度之星 初赛 第六题 HDU6349

    三原色图  Accepts: 281  Submissions: 1261  Time Limit: 1500/1000 MS (Java/Others)  Memory Limit: 262144/ ...

  3. 百度之星初赛2A 1001 ALL X(HDU 5690)

    All X Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  4. 2018百度之星初赛(A)2 度度熊学队列

    思路: 记录一下c++ stl中的双向链表list的各种用法. https://blog.csdn.net/fanyun_01/article/details/56881515 实现: #includ ...

  5. 【2018百度之星初赛(A)】1002 度度熊学队列

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=6375 Knowledge Point: STL - map:https://www.cnblogs.c ...

  6. 2018百度之星初赛B轮 p1m2

    p1m2 Accepts: 954 Submissions: 4063 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/1310 ...

  7. 2018百度之星初赛B轮 rect

    rect Accepts: 1654 Submissions: 2948 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131 ...

  8. 2018百度之星初赛A轮 度度熊拼三角

    #include<bits/stdc++.h> using namespace std; int n; int a[1005]; int main() {     int ans;     ...

  9. 2018百度之星初赛A轮 度度熊学队列

    注意:刚开始用数组存deque<int> qa[MAX]会爆内存 需要改用map<int, deque<int> > qa优化 不明觉厉 #include<b ...

随机推荐

  1. 【181】IDL 代码从 Windows 转移到 Linux

    文件夹分隔符,Windows 是“/”,Linux 是“\”,按照程序,需要修改 通过 bash 运行 *.pro 文件,貌似只能运行没有参数的,有参数的需要写入到文件中 idl 的文件不能用大写字母 ...

  2. springMVC实现基本文件夹压缩下载功能

    将文件夹压缩后下载: @Slf4j public class Test { private static final String BASE_PATH = "/root/doc/" ...

  3. 0 Java实现 一篇文章说尽设计模式之六大原则

    我们知道,设计模式很有用,学好设计模式不但能让你写出更简洁,优雅的代码,还能使得代码的结构更清晰,也更有利于扩展 当然设计模式也不是万能的,一成不变的.设计模式只是前人总结出来的一种经验,一种特定问题 ...

  4. bzoj 1042: [HAOI2008]硬币购物【dp】

    设f[i]为凑i元的方案数,这个随便dp一下就行了 然后处理限制,我们考虑用容斥,也就是4个超限-3个超限+2个超限-1个超限,这里用状压枚举一下,然后i硬币超限就当做选了d[i]+1个,在s里减去, ...

  5. bzoj 1444: [Jsoi2009]有趣的游戏【AC自动机+dp+高斯消元】

    https://blog.sengxian.com/solutions/bzoj-1444 orz 一直是我想错了,建出AC自动机之后,实际上这个定义是设f[i]为经过i节点的 * 期望次数 * ,因 ...

  6. poj 3525Most Distant Point from the Sea【二分+半平面交】

    相当于多边形内最大圆,二分半径r,然后把每条边内收r,求是否有半平面交(即是否合法) #include<iostream> #include<cstdio> #include& ...

  7. Ocelot(六)- 架构图

    简介 Ocelot是一个用.NET Core实现并且开源的API网关,它功能强大,包括了:路由.请求聚合.服务发现.认证.鉴权.限流熔断.并内置了负载均衡器与Service Fabric.Butter ...

  8. SQL Server 语法注意

    1.order by select a1,a1 from  temp order by a1 此语句在高版本中执行提示a1列名不明确,在低版本中执行成功!

  9. 第四章 朴素贝叶斯法(naive_Bayes)

    总结 朴素贝叶斯法实质上是概率估计. 由于加上了输入变量的各个参量条件独立性的强假设,使得条件分布中的参数大大减少.同时准确率也降低. 概率论上比较反直觉的一个问题:三门问题:由于主持人已经限定了他打 ...

  10. _bzoj1012 [JSOI2008]最大数maxnumber【Fenwick Tree】

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1012 裸的树状数组. #include <cstdio> #include &l ...