L. Ray in the tube(思维暴力)
L. Ray in the tube(思维&暴力)
思路:思维+暴力。
记:A,BA,BA,B的横坐标距离为xxx。
1.当xxx为奇数时,显然x=1x=1x=1包含所有奇数的情况。
2.当xxx为偶数时,因为任何偶数质因数分解都可分解为:2k1×p2k2…pmkm2^{k_1}\times p_2^{k_2}\dots p_m^{k_m}2k1×p2k2…pmkm。
所以任何偶数都可以被2k12^{k_1}2k1替代。
即我们只需枚举20=1,21,…,2k,(2k≤1e9)2^0=1,2^1,\dots,2^k,(2^k\leq 1e9)20=1,21,…,2k,(2k≤1e9)即可。
对于一个界面我们只需将所有的横坐标对2x2x2x取模,取模后的相等的数是可以等价的,
对于另一个界面我们只需将所有横坐标+x+x+x后再对2x2x2x取模,因为两个界面的可到达点是相距xxx的。
这样我们只需求出现次数最多的横坐标即可。
时间复杂度:O((n+m)log(1e9))O((n+m)log(1e9))O((n+m)log(1e9))
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5,M=2e4+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
#define pb push_back
int a[N],b[N],c[N<<1];
int main(){ int n,m,h,ans=2; scanf("%d%d",&n,&h);for(int i=1;i<=n;i++) scanf("%d",&a[i]);scanf("%d%d",&m,&h);c[n+m+1]=1e9+1; for(int i=1;i<=m;i++) scanf("%d",&b[i]);for(int i=1;i<=1e9;i<<=1){int mod=(i<<1);for(int j=1;j<=n;j++) c[j]=a[j]%mod;for(int j=1;j<=m;j++) c[j+n]=(b[j]+i)%mod;sort(c+1,c+n+m+1);for(int j=1,pre=0;j<=n+m;j++){if(c[j]!=c[j+1]){ans=max(ans,j-pre);pre=j;}}}printf("%d\n",ans);return 0;
}
L. Ray in the tube(思维暴力)相关推荐
- L - Ray in the tube Gym - 101911L (暴力)
---恢复内容开始--- You are given a tube which is reflective inside represented as two non-coinciding, but ...
- Problem G Ray in the tube(思维)
https://codeforces.com/gym/101911/problem/L 题意 在二维坐标系中给出两个直线 y = a, y = b.在这两条直线上分别有n个和m个传感器,可以任意选两个 ...
- Codeforces Round #509 (Div. 2) F. Ray in the tube(思维)
题目链接:http://codeforces.com/contest/1041/problem/F 题意:给出一根无限长的管子,在二维坐标上表示为y1 <= y <= y2,其中 y1 上 ...
- CF1041F Ray in the tube构造_思维
不难发现起点必定是一个点. 每次间隔的距离一定是 2k2^k2k,关键就是要判断两点是否在同一跳跃距离上可被同时覆盖. 我们可以对上边进行 x1≡x_{1}\equivx1≡ x2mod(2∗dx) ...
- CodeForces - 1168B Good Triple(思维+暴力)
题目链接:点击查看 题目大意:给出一个长度为n的01字符串,求所有满足条件的区间对数[l,r],使得在区间[l,r]内至少存在一组满足条件的答案,这里第二层的满足条件是指存在两个正整数个x和k,满足s ...
- AcWing 1801. 蹄子剪刀布(思维+暴力)
题目连接 https://www.acwing.com/problem/content/1803/ 思路 开始我们不难想到一个比较暴力的想法就是我们枚举1.2.31.2.31.2.3的所有状态也就是都 ...
- L型与R型思维的特征
L型的处理特点: 语言能力:使用词语来命名.描述和定义. 分析能力:有理有节分析事情. 符号能力:用符号表示事物. 抽象能力:提取小部分信息(本质),并用其表示事物整体. 时间能力:遵时循序. 推理能 ...
- Codeforces 846 A Curriculum Vitae 思维 暴力
题目链接: http://codeforces.com/contest/846/problem/A 题目描述: 给你一个串, 你可以做删除操作, 要求结果串0不能在1的右边, 问最多可以剩几个数字 解 ...
- 上海理工大学第二届“联想杯”全国程序设计邀请赛 Identical Day 思维 + 暴力
传送门 文章目录 题意: 思路: 题意: 给你一个010101序列,假设有一段长为lll连续的全111子串,定义这段字串不高兴值为l∗(l+1)2\frac{l*(l+1)}{2}2l∗(l+1), ...
最新文章
- 【Python】青少年蓝桥杯_每日一题_7.11_画太阳
- Innodb锁系统 Insert/Delete 锁处理及死锁示例分析
- linux不同发行版 程序通用吗,为什么各种Linux发行版使用不同的包管理器?
- 甲骨文将Exadata Cloud转化为内部软件包
- php 随机指定位数,php生成一个可选位数的随机码
- 【树链剖分】洛谷树(P3401)
- 线程故事:关于健壮的线程池
- 机器学习(九)初识BP神经网络
- 坐拥12亿月活流量,腾讯直播带货的底牌
- 从系统集成到虚拟化,IT之路艰难前行...
- LNMP+HAProxy+Keepalived负载均衡(五)- 通过rsyncd实现文件的相互同步
- django-dynamic-scraper(DDS)配置中的一些问题
- android 深色主题背景适配原理剖析
- Unity TextMeshPro中文显示为方块
- Atitit. 构造ast 语法树的总结attilax v2 q0f
- 取代奶瓶Minidwep-gtk破解WPA 全攻略
- Windows操作系统----安全机制----Token
- PPPOE和IPOE
- 【全网热点】打造全网最全爱心代码仓库【火速领取爱心】
- seata: endpoint format should like ip:port
热门文章
- 【Matlab】彻底清除persistent变量
- 第2章:Android的编译环境--build系统
- Excel学习日记:L12-打印分页
- SDNU_ACM_ICPC_2020_Winter_Practice_4th [Reproduced]
- Rabbitmq面试题总结,非常详细,杜绝标题党,不详细你打我,下次不写博客了
- 商汤提出手机端实时单目三维重建系统,实现逼真AR效果和交互
- 一个长二进制串,求除3的余数
- 职业生涯自我规划五步法
- 设计思维从1到100
- 基于.NET 框架的 C#停车场信息管理系统(C#/SQL)