l洛谷 (水题)P4144 大河的序列
题目戳
Solution:
这题前面都是废话,关键的一句就是本题求的是序列中连续一段的相与值(&)+相或值(|)最大,然后对这个值进行快速幂取模。考虑到两个数相与最大能得到的就是这两个数中的最大值,那么不妨只取出序列中的最大数,然后逐个加数进行操作,容易想到当相或时要使最大数的值变大必然至少要使原数值的二进制中的一个0变为1,而再去相与时必然会使原数减小最少是相或增加的值(例如:假设最大值是101,此时加入数10,则相或变为111,但是相与会变为10,减少的比增加的要多),于是贪心的思想我们直接选取序列中的最大值,而题目中的连续一段可以是一个数,那么,连续一段的相与值+相或值最大就是 最大数*2,然后对这个数快速幂取模就ok了。(注意:题目中b可以为0,按理说输出是1,但是莫名其妙数据中要输出0)
代码:
// luogu-judger-enable-o2
#include<bits/stdc++.h>
#define ll long long
#define il inline
using namespace std;
ll n,p,b,a[],num;
il void gi(ll &c)
{
c=;char x=getchar();bool f=;
while((x<''||x>''))x=getchar();
while(x>=''&&x<='')c=c*+x-,x=getchar();
}
il ll fast(ll x,ll b)
{
ll a=;
while(b){
if(b&)a=a*x%p;
b>>=;
x=x*x%p;
}
return a;
}
int main()
{
gi(n),gi(b),gi(p);
if(b==){printf("");return ;}
for(int i=;i<=n;i++)gi(a[i]),num=max(a[i],num);
num<<=;
printf("%lld",fast(num+,b));
return ;
}
l洛谷 (水题)P4144 大河的序列的更多相关文章
- 洛谷水题p1421小玉买文具题解
题目描述 班主任给小玉一个任务,到文具店里买尽量多的签字笔.已知一只签字笔的价格是1元9角,而班主任给小玉的钱是a元b角,小玉想知道,她最多能买多少只签字笔呢. 输入输出格式 输入格式: 输入的数据, ...
- HDU 5538 L - House Building 水题
L - House Building Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.ph ...
- 洛谷P3567[POI2014]KUR-Couriers(主席树+二分)
题意:给一个数列,每次询问一个区间内有没有一个数出现次数超过一半 题解: 最近比赛太多,都没时间切水题了,刚好日推了道主席树裸题,就写了一下 然后 WA80 WA80 WA0 WA90 WA80 ?? ...
- 洛谷 P4999(数位DP)
###洛谷 P4999 题目链接 ### 题目大意:给你一个区间,求这段区间中所有数的,数位上的,数字之和. 分析: 这题与 洛谷 P2602 相似,稍微改一下就可以了. 求出 0 ~ 9 的个数,然 ...
- 洛谷 P4093: bzoj 4553: [HEOI2016/TJOI2016]序列
题目传送门:洛谷P4093. 题意简述: 给定一个长度为 \(n\) 的序列 \(a\). 同时这个序列还可能发生变化,每一种变化 \((x_i,y_i)\) 对应着 \(a_{x_i}\) 可能变成 ...
- l洛谷 P3926 SAC E#1 - 一道不可做题 Jelly
P3926 SAC E#1 - 一道不可做题 Jelly 题目背景 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢吃蒟蒻果冻.而SOL菌也很喜欢蒟蒻果冻. 有一 ...
- P2415 集合求和(一道洛谷好题鸭)(虽然可以水过,但有必研究DP)
此题坑点: 结果必须要用long long存,int存不下 如果想要像cout<<sum*pow(2,num-1)这样在输出时计算会错:long long在计算过程被隐式转换成了doubl ...
- l洛谷 P2326 AKN’s PPAP
P2326 AKN’s PPAP 题目描述 “I have a pen,I have an apple.Eh,Apple-Pen!. I have a pen,I have pineapple.En, ...
- 洛谷 P1572 计算分数
P1572 计算分数 题目描述 Csh被老妈关在家里做分数计算题,但显然他不愿意坐这么多复杂的计算.况且在家门口还有Xxq在等着他去一起看电影.为了尽快地能去陪Xxq看电影,他把剩下的计算题交给了你, ...
随机推荐
- 【LG3233】[HNOI2014]世界树
题面 洛谷 题解 代码 #include <iostream> #include <cstdio> #include <cstdlib> #include < ...
- SaltStack入门篇(六)之部署Redis主从实现和Job管理
一.部署Redis主从 需求: 192.168.56.11是主,192.168.56.12是从 redis监听自己的ip地址,而不是0.0.0.0 分析: linux-node1 安装 配置 启动 l ...
- Spring Boot:Caused by: org.apache.ibatis.binding.BindingException: Parameter 'deptId' not found.
1. 错误信息描述 在使用Spring Boot + Mybaits从前台向后台提交数据时,控制台报出该错误信息 2. 报错原因 在dao接口中,该方法拥有两个参数,Mybaits无法区分这两个参数 ...
- 使用装饰器@property
1.在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改: s = Student() s.score = 98s.score = 1000 # 属性 ...
- STM32L431仿真卡在HAL_InitTick(TICK_INT_PRIORITY);
1. 使用IAR 8.20版本,STM32L431RBT芯片,JLINK V9仿真器,实际仿真测试的时候卡在如下的函数 /* Use SysTick as time base source and c ...
- Centos7使用yum安装MySQL5.6的正确姿势
centos自带的repo是不会自动更新每个软件的最新版本,所以无法通过yum方式安装MySQL的高级版本. 所以,即使使劲用yum -y install mysql mysql-server mys ...
- mysqldump: Got errno 28 on write(mysql)
使用mysqldump进行数据库备份的时候,出现下面的错误 mysqldump: Got errno 28 on write 上网查了一下:出现这个错误,是因为磁盘的空间不足 再看系统空间使用 ...
- Spark实施备忘
AttributeError: 'SparkConf' object has no attribute '_get_object_id' 初始化SparkContext时出现这种错误是因为把Spark ...
- Python+selenium+pil+tesseract实现自动识别验证码
一.环境搭建准备: 1.Python下载,安装以及环境配置 2.IDE pycharm 工具下载,安装 3.ie浏览器 4.selenium 5.pil:pil第三方库的下载,win下安装whl文件, ...
- Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2) E. The Supersonic Rocket
这道题比赛之后被重新加了几个case,很多人现在都过不了了 算法就是先求凸包,然后判断两个凸包相等 我们可以吧凸包序列化为两点距离和角度 角度如果直接拿向量的叉积是不对的,,因为钝角和锐角的叉积有可能 ...