博客
关于我
C - Zero Quantity Maximization
阅读量:244 次
发布时间:2019-03-01

本文共 1765 字,大约阅读时间需要 5 分钟。

You are given two arrays aa and bb, each contains nn integers.

You want to create a new array cc as follows: choose some real (i.e. not necessarily integer) number dd, and then for every i∈[1,n]i∈[1,n] let ci:=d⋅ai+bici:=d⋅ai+bi.

Your goal is to maximize the number of zeroes in array cc. What is the largest possible answer, if you choose dd optimally?Input

The first line contains one integer nn (1≤n≤2⋅1051≤n≤2⋅105) — the number of elements in both arrays.

The second line contains nn integers a1a1, a2a2, …, anan (−109≤ai≤109−109≤ai≤109).

The third line contains nn integers b1b1, b2b2, …, bnbn (−109≤bi≤109−109≤bi≤109).Output

Print one integer — the maximum number of zeroes in array cc, if you choose dd optimally.ExamplesInput

51 2 3 4 52 4 7 11 3

Output

2

Input

313 37 391 2 3

Output

2

Input

40 0 0 01 2 3 4

Output

0

Input

31 2 -1-6 -12 6

Output

3

Note

In the first example, we may choose d=−2d=−2.

In the second example, we may choose d=−113d=−113.

In the third example, we cannot obtain any zero in array cc, no matter which dd we choose.

In the fourth example, we may choose d=6d=6.


思路:统计一下变成0的d最多的是哪个,注意下都是0的时候额外加,这题好像要longdouble 的精度

#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;const int maxn=2e5+1000;typedef long long LL;LL a[maxn],b[maxn];int main(void){// cin.tie(0);std::ios::sync_with_stdio(false); map
map1; LL n;cin>>n; LL sum=0;LL cnt=0; for(LL i=1;i<=n;i++) cin>>a[i]; for(LL i=1;i<=n;i++) cin>>b[i]; for(LL i=1;i<=n;i++){ if(a[i]!=0){ long double c=(-1*1.0)*b[i]/a[i]; //似乎要long double map1[c]++; } if(a[i]==0&&b[i]==0) cnt++;//注意是额外加的..不是直接放sum } for(map
::iterator it=map1.begin();it!=map1.end();it++){ sum=max(sum,it->second); } cout<
<

转载地址:http://pldt.baihongyu.com/

你可能感兴趣的文章
Native方式运行Fabric(非Docker方式)
查看>>
Nature | 电子学“超构器件”, 从零基础到精通,收藏这篇就够了!
查看>>
Nature和Science同时报道,新疆出土四千年前遗骸完成DNA测序,证实并非移民而是土著...
查看>>
Nature封面:只低一毫米,时间也会变慢!叶军团队首次在毫米尺度验证广义相对论...
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
Nat、端口映射、内网穿透有什么区别?
查看>>
nat打洞原理和实现
查看>>
NAT技术
查看>>
NAT模式/路由模式/全路由模式 (转)
查看>>
NAT模式下虚拟机centOs和主机ping不通解决方法
查看>>
NAT的两种模式SNAT和DNAT,到底有啥区别?
查看>>
NAT的全然分析及其UDP穿透的全然解决方式
查看>>
NAT类型与NAT模型详解
查看>>
NAT网络地址转换配置实战
查看>>
NAT网络地址转换配置详解
查看>>
navbar navbar-inverse 导航条设置颜色
查看>>
Navicat for MySQL 命令列 执行SQL语句 历史日志
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Navicat for MySQL笔记1
查看>>
Navicat for MySQL(Ubuntu)过期解决方法
查看>>