Codeforces Round #544 (Div. 3) (补)
D:没有注意到a==0&&b==0的情况,把自己卡崩了。对于数学公式推导一定要注意关于0的特殊情况,不可以少
#include <iostream>
#include <cstring>
#include <string>
#include <map>
#include <set>
#include <algorithm>
#include <fstream>
#include <cstdio>
#include <cmath>
#include <stack>
#include <queue>
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
using namespace std;
const double Pi=3.14159265358979323846;
typedef long long ll;
const int MAXN=+;
const int dx[]={,,,,-};
const int dy[]={,-,,,};
const int INF = 0x3f3f3f3f;
const int NINF = 0xc0c0c0c0;
const ll mod=1e9+;
struct node
{
int a,b;
long double c;
}d[MAXN]; bool cmp(node a,node b)
{
return abs(a.a)<abs(b.a);
} bool cmp2(node a,node b)
{
return a.c<b.c;
} int main()
{
int n;scanf("%d",&n);
for(int i=;i<=n;i++)
{
scanf("%d",&d[i].a);
}
for(int i=;i<=n;i++)
{
scanf("%d",&d[i].b);
}
int cnts=;
for(int i=;i<=n;i++)
{
if(d[i].a==&&d[i].b==) cnts++; if(d[i].a!=)
d[i].c=d[i].b*1.0/d[i].a;
else d[i].c=;
}
sort(d+,d+n+,cmp);
int t=;
for(int i=;i<=n;i++)
{
if(d[i].a==) continue;
else
{
t=i;
break;
}
}
if(d[n].a==)
{
cout << cnts<<endl;
return ;
}
// cout <<t<<endl;
/* for(int i=t;i<=n;i++)
{
cout <<d[i].c<<" ";
}*/
sort(d+t,d+n+,cmp2);
/*for(int i=t;i<=n;i++)
{
cout <<d[i].c<<" ";
}*/
int ans=;int cnt=;long double x=d[t].c;
for(int i=t+;i<=n;i++)
{
if(d[i].c==x)
{
cnt++;
ans=max(ans,cnt);
}
else
{
x=d[i].c;
cnt=;
}
}
cout <<ans+cnts<<endl;
return ;
}
F1:被D心态搞崩,然后F1比赛的时候读不懂题,Your task is to find any spanning tree of this graph such that the maximum degree over all vertices is maximum possible这句话半天理解不了,下来问,才知道直接简单bfs就可以了,然后忘了bfs咋写,写了好长时间(太菜了)
#include <iostream>
#include <cstring>
#include <string>
#include <map>
#include <set>
#include <algorithm>
#include <fstream>
#include <cstdio>
#include <cmath>
#include <stack>
#include <queue>
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
using namespace std;
const double Pi=3.14159265358979323846;
typedef long long ll;
const int MAXN=+;
const int dx[]={,,,,-};
const int dy[]={,-,,,};
const int INF = 0x3f3f3f3f;
const int NINF = 0xc0c0c0c0;
const ll mod=1e9+;
int dis[MAXN];
vector <int> G[MAXN]; void bfs(int M)
{
queue <int> Q;
Q.push(M);
dis[M]=;
while(!Q.empty())
{
int F=Q.front();Q.pop(); for(int i=;i<G[F].size();i++)
{
if(dis[G[F][i]]==)
{
printf("%d %d\n",F,G[F][i]);
Q.push(G[F][i]);
dis[G[F][i]]=;
}
}
}
}
int main()
{
int n,m;
scanf("%d%d",&n,&m);
for(int i=;i<=m;i++)
{
int a,b;scanf("%d%d",&a,&b);
G[a].push_back(b);
G[b].push_back(a);
}
int Msize=;int M=;
for(int i=;i<=n;i++)
{
if(G[i].size()>Msize)
{
Msize=G[i].size();
M=i;
}
}
bfs(M);
return ;
}
现在还是一碰见图和树的问题就发怵。
E:还没写出来
Codeforces Round #544 (Div. 3) (补)的更多相关文章
- Codeforces Round #544 (Div. 3) 题解
Codeforces Round #544 (Div. 3) D. Zero Quantity Maximization 题目链接:https://codeforces.com/contest/113 ...
- Codeforces Round #412 Div. 2 补题 D. Dynamic Problem Scoring
D. Dynamic Problem Scoring time limit per test 2 seconds memory limit per test 256 megabytes input s ...
- Codeforces Round #544 (Div. 3) dp + 双指针
https://codeforces.com/contest/1133/problem/E 题意 给你n个数(n<=5000),你需要对其挑选并进行分组,总组数不能超过k(k<=5000) ...
- Codeforces Round #544 (Div. 3) D. Zero Quantity Maximization
链接:https://codeforces.com/contest/1133/problem/D 题意: 给两个数组a,b. 同时ci = ai * d + bi. 找到一个d使c数组中的0最多. 求 ...
- Codeforces Round #544 (Div. 3) C. Balanced Team
链接:https://codeforces.com/contest/1133/problem/C 题意: 给n个数, 在这n个数中选最多n个数,来组成一个队伍. 保证这n个数的最大最小差值不大于5. ...
- Codeforces Round #544 (Div. 3) B.Preparation for International Women's Day
链接:https://codeforces.com/contest/1133/problem/B 题意: 给n个数,和一个k,在n个数中选几对数,保证没对数相加可以整除k. 求最大能选几个数. 思路: ...
- Codeforces Round #544 (Div. 3) A.Middle of the Contest
链接:https://codeforces.com/contest/1133/problem/A 题意: 给两个时间点,求中间时间点. 思路: 数学 代码: #include <bits/std ...
- Codeforces Round #544 (Div. 3) Editorial C. Balanced Team
http://codeforces.com/contest/1133/problem/Ctime limit per test 2 secondsmemory limit per test 256 m ...
- D. Zero Quantity Maximization ( Codeforces Round #544 (Div. 3) )
题目链接 参考题解 题意: 给你 整形数组a 和 整形数组b ,要你c[i] = d * a[i] + b[i], 求 在c[i]=0的时候 相同的d的数量 最多能有几个. 思路: 1. 首先打开 ...
随机推荐
- ifcfg-eth配置详解(CentOS6)
1.基本配置形式 1.1 动态IP基本配置 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes BOOTPROTO=dhcp DEVICE--网卡名,要与ifcfg-ethx中的 ...
- 锚点 , angular 锚点 vue锚点
因为最近在开发angular,自己有路由 用window.location跳到默认路由,查了半天用angular方式不好解决 ,so 原生走起 START scrollIntoView是一个与页面(容 ...
- Linux int 最大为多大
可以查看 /usr/include/limits.h 文件 里面定义好了各种类型的最大最小值 ... /* Minimum and maximum values a `signed int' can ...
- mv
mv命令是move的缩写,可以用来移动文件或者将文件改名,这也是个常用命令,经常用来备份文件或者目录. 1.命令格式: mv [选项] 源文件或目录 目标文件或目录 2.命令功能: 视mv命令中第 ...
- Vue + Element UI 实现权限管理系统(搭建开发环境)
技术基础 开发之前,请先熟悉下面的4个文档 vue.js2.0中文, 优秀的JS框架 vue-router, vue.js 配套路由 vuex,vue.js 应用状态管理库 Element,饿了么提供 ...
- 登录验证码实现(Captcha)
登录验证码 登录验证是一般系统都会有的功能,验证的方式也多种多样,比如输入式验证码,拖动式验证条,拖动式验证拼图等等. 我们这里先实现常规的输入验证码的方式,右边显示验证码图片,点击可刷新,左边输入验 ...
- 容错机制和熔断(Hystrix)
雪崩效应 在微服务架构中,由于服务众多,通常会涉及多个服务层级的调用,而一旦基础服务发生故障,很可能会导致级联故障,进而造成整个系统不可用,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供者 ...
- [Codeforces708E]Student's Camp
Problem 一个n*m块砖的建筑,一共k天,每天风从两边吹,吹掉砖的概率为p,反之为1-p,求最终建筑没有倒塌的可能性(上层与下层有交集且每一层都有砖) Solution 首先,我们可以预处理出p ...
- dede织梦调取一二三级栏目名及栏目下的内容列表的方法
网站根据需要,把地区划成省-市-文章的层级结构,栏目首页需要显示的是 复制代码代码如下: {dede:channelarclist} <!--省显示--> <a href=" ...
- linux命令学习 随笔
linux命令随笔 linux命令随笔 用户操作 搜索命令 PATH环境变量 Linux中的通配符 文件搜索命令locate 搜索命令的命令whereis与which 文件搜索命令find(最强大的哦 ...