博客
关于我
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/

你可能感兴趣的文章
Netty工作笔记0013---Channel应用案例4Copy图片
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>
Netty工作笔记0020---Selectionkey在NIO体系
查看>>
Vue踩坑笔记 - 关于vue静态资源引入的问题
查看>>
Netty工作笔记0024---SelectionKey API
查看>>
Netty工作笔记0025---SocketChannel API
查看>>
Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0057---Netty群聊系统服务端
查看>>
Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
查看>>
Netty工作笔记0063---WebSocket长连接开发2
查看>>
Netty工作笔记0070---Protobuf使用案例Codec使用
查看>>
Netty工作笔记0072---Protobuf内容小结
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0081---编解码器和处理器链梳理
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>