题目链接:http://codeforces.com/contest/1041/problem/F

题意:给出一根无限长的管子,在二维坐标上表示为y1 <= y <= y2,其中 y1 上与 n 个点,y2 上有 m 个点,问在 y1 和 y2 上各选一个点,从其中一个点出发射到另外一个点并无限反射下去,可以触碰到 y1 和 y2 上的点和最大为多少。

题解:考虑射出去的线打到对面板上所需要走的距离dd,假设出发点为0,则打在自己这边上的点的坐标为{0,2d,4d,6d,8d,...}{0,2d,4d,6d,8d,...},打在对面板上的则是{d,3d,5d,7d,9d,...}{d,3d,5d,7d,9d,...}。若将距离改为k⋅d,则两个点集分别为{0,2kd,4kd,6kd,8kd,...}{0,2kd,4kd,6kd,8kd,...},{kd,3kd,5kd,7kd,9kd,...}{kd,3kd,5kd,7kd,9kd,...},可以发现若k为奇数,两个集合中的点都只会减少不会增加,kk为偶数时则有存在增减的情况,因此设k=2^l一定是最优的。

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 #define ll long long
 4 #define LL __int128
 5 #define ull unsigned long long
 6 #define mst(a,b) memset((a),(b),sizeof(a))
 7 #define mp(a,b) make_pair(a,b)
 8 #define pi acos(-1)
 9 #define pii pair<int,int>
10 #define pb push_back
11 const int INF = 0x3f3f3f3f;
12 const double eps = 1e-6;
13 const int MAXN = 1e5 + 10;
14 const int MAXM = 2e6 + 10;
15 const ll mod = 1e9 + 7;
16
17 int a[MAXN], b[MAXN];
18 map<ll,int>mp;
19
20 int main()
21 {
22 #ifdef local
23     freopen("data.txt", "r", stdin);
24 //    freopen("data.txt", "w", stdout);
25 #endif
26     int n,m,y;
27     scanf("%d%d",&n,&y);
28     for(int i = 0; i < n; i++) scanf("%d",&a[i]);
29     scanf("%d%d",&m,&y);
30     for(int i = 0; i < m; i++) scanf("%d",&b[i]);
31     int ans = 2;
32     ll d = 1, dd = 1;
33     for(int i = 0; i <= 32; i++) {
34         mp.clear();
35         dd <<= 1;
36         for(int j = 0; j < n; j++) mp[a[j] % dd]++;
37         for(int j = 0; j < m; j++) mp[(b[j] + d) % dd]++;
38         for(auto it : mp) ans = max(ans, it.second);
39         d <<= 1;
40     }
41     printf("%d\n",ans);
42     return 0;
43 }

转载于:https://www.cnblogs.com/scaulok/p/9677272.html

Codeforces Round #509 (Div. 2) F. Ray in the tube(思维)相关推荐

  1. Codeforces Round #699 (Div. 2) F - AB Tree(贪心、树上DP)超级清晰,良心题解,看不懂来打我 ~

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #699 (Div. 2) F - AB Tree Problem ...

  2. Codeforces Round #644 (Div. 3) F.Spy-string

    Codeforces Round #644 (Div. 3) F.Spy-string 题目链接 You are given n strings a1,a2,-,an: all of them hav ...

  3. Codeforces Round #849 (Div. 4) F. Range Update Point Query

    Codeforces Round #849 (Div. 4) F. Range Update Point Query 题目大意: 给一串数字,有两个操作: 操作1:将 l − r l-r l−r 的数 ...

  4. Codeforces Round #538 (Div. 2) F. Please, another Queries on Array? 线段树 + 欧拉函数

    传送门 文章目录 题意: 思路: 题意: 给你一个序列aaa,你需要实现两种操作: (1)(1)(1) 将[l,r][l,r][l,r]的aia_iai​都乘rrr. (2)(2)(2) 求ϕ(∏i= ...

  5. Codeforces Round #742 (Div. 2) F. One-Four Overload 构造 + 二分图染色

    传送门 文章目录 题意: 思路: 题意: 给你一个n∗mn*mn∗m的矩形,包含...和XXX,你有两种颜色,你需要给...染色使得每个XXX上下左右相邻的...其两种颜色个数相同,输出一种合法方案. ...

  6. Codeforces Round #740 (Div. 2) F. Top-Notch Insertions 线段树 / 平衡树 + 组合数学

    传送门 文章目录 题意: 思路: 题意: 思路: 考虑最终的序列是什么鸭子的,首先序列肯定单调不降,也就是a1≤a2≤a3≤...≤ana_1\le a_2\le a_3\le ...\le a_na ...

  7. Codeforces Round #585 (Div. 2) F. Radio Stations 2-sat + 神仙建模

    传送门 文章目录 题意: 思路: 题意: 你现在有ppp种电台,有nnn对关系(x,y)(x,y)(x,y)代表xxx电台或yyy电台中至少有一个,mmm对关系(x,y)(x,y)(x,y)代表xxx ...

  8. Codeforces Round #675 (Div. 2) F. Boring Queries 区间lcm + 主席树

    传送门 文章目录 题意: 思路: 题意: 给你一个长度为nnn的序列aaa,qqq个询问,每次询问[l,r][l,r][l,r]内的lcmlcmlcm是多少,对1e9+71e9+71e9+7取模. n ...

  9. Codeforces Round #592 (Div. 2) F. Chips 构造 + 细节

    传送门 文章目录 题意: 思路: 题意: 思路: 恶心的构造题,思路很简单但是代码细节很多,搞了半天. 根据题目的性质不难发现,如果有两个相同颜色的球相邻,那么他们的颜色永远不会改变. 根据这个性质, ...

最新文章

  1. 快被系统性能逼疯了?你需要这份性能优化策略
  2. Xamarin Essentials应用教程文件系统FileSystem
  3. 关于ZendOptimizer和wamp的phpmyadmin冲突问题
  4. c++构建工具之make使用小结
  5. html 静态资源缓存时间,.htaccess设置静态资源缓存(即浏览器缓存)
  6. oracle怎么查询表空间信息,查询Oracle表空间信息
  7. [转]CentOS 7忘记root密码解决办法
  8. 2016年:勒索病毒造成损失预估超过10亿美元
  9. C# 根据中文得到全拼
  10. 信息学奥赛一本通 1958:【12NOIP普及组】寻宝 | OpenJudge NOI 1.12 06 | 洛谷 P1076 [NOIP2012 普及组] 寻宝
  11. 团队冲刺第一阶段第五天
  12. go 判断元素是否在slice_golang 判断 两个slice 是否相等
  13. python列表比大小_Python列表按组大小排序
  14. WPF面板布局介绍Grid、StackPanel、DockPanel、WrapPanel
  15. 全国计算机vfp是什么,vfp是什么-你知VFP是什么东西吗?它是我们大学生必须上的计算机的一个章节的 爱问知识人...
  16. 互联网日报 | 2月3日 星期三 | 微信5000万份红包封面免费领;抖音回应“封杀腾讯”谣言;爱驰汽车入局网约车...
  17. Web前端开发之网站制作流程详细讲解
  18. Windows环境QtCharts安装配置说明(qt5.12.2+qtCharts5.12)
  19. MT7688/MT7628-GPIO使用
  20. 数蛙科技百亿级物流标签轨迹时序数据压测

热门文章

  1. 【无标题】程序员如何优雅地摸鱼?
  2. linux 移动硬盘 machine,MacBook使用一块移动硬盘做Win To Go及Time Machine备份
  3. 我的世界服务器怎么弄领地语言,我的世界领地指令大全 教你如何设置领地
  4. FastDFS单机部署安装
  5. 1分钟部署单机版kubernetes 1.13.4
  6. 基于Laya实现ViewPager页面切换效果
  7. pat 1027. Colors in Mars (20)
  8. STM32F4xx的时钟树
  9. NokiaS60系列的jes-lcdui1@异常的分析
  10. 电池行业如何去除碳酸锂溶液中的钙镁离子