/*
抢名额第一场 GG
"我什么都不会阿"
这场磕死在E题了
按说应该能想到费马小定理 毕竟p is a prime
别的队都过了 大家都比较熟悉的就只有这一个
然后还有I题一开始尺取有个思路,然后很快找出bug
这时没换思路而是补了一下这个bug 就加个if
然后疯狂wa4 策略不对
其实wa个几发就该意识到思路有问题了
但是还是一直怼 不合理
积累经验了就 下场注意
*/
/*
先看E题吧 打表猜测答案2^(2^n-n)%p
指数 不能mod 根据费马小定理 2^(p-1)%p==1
每p-1个2乘起来对答案没有贡献 所以指数%p-1
另外p==2的时候 2和p不互质 特判一下
*/
#include<iostream>
#define ll long long
using namespace std;
ll n,k,p,ans;
ll Mi(ll a,ll b,ll c){
if(b==)return ;ll res=Mi(a,b/,c);
res=res*res%c;if(b&)res=res*a%c;return res;
}
int main(){
cin>>n>>k>>p;ans=Mi(,(Mi(,n,p-)-n%(p-)+p-)%(p-),p);
if(k==)ans=(ans-+p)%p;if(p==)ans=+(k==);cout<<ans<<endl;return ;
}
/*
I题 根据题目的指引 应该是在线做 每次严格On
On的算法无非就是贪心尺取和单调队列
这题对于每个区间答案是r+l-1-(p[r]-p[l-1])+k-(p[r]-p[l-1])
pi是前缀1的个数 化简后 r-2p[r]+1+k+2p[l-1]-l
枚举r 维护合法的l的最优值 合法的l必须有 p[r]-p[l-1]<=k
一开始想的尺取,就是想找到每个合法的区间然后按上面的算一遍,但是这样会漏下一些
举个比方
111111111111111001111111111101111111111100111111111001111111111111100
8
9
这组 头指针和尾指针只会找合法的尽量长的区间,但是我们还有一种把0拿过来的操作,需要一些合法的比较短的
目前还没想到怎么改....
*/
#include<cstdio>
#include<cstring>
#include<iostream>
#define maxn 1000010
using namespace std;
int n,m,q[maxn],p[maxn],hea,tai,ans;
char s[maxn];
int main(){
scanf("%s%d",s+,&m);n=strlen(s+);
for(int i=;i<=n;i++)p[i]=p[i-]+s[i]-'';
while(m--){
int k;scanf("%d",&k);hea=tai=;ans=;
for(int i=;i<=n;i++){
while(hea<tai&&*p[q[tai]-]-q[tai]<=*p[i-]-i)tai--;
q[++tai]=i;
while(hea<tai&&p[i]-p[q[hea+]]>k)hea++;
ans=max(ans,i-*p[i]++k-q[hea+]+*p[q[hea+]-]);
}
printf("%d\n",min(ans,n-p[n]));
}
return ;
}

最新文章

  1. Spring 之注解事务 @Transactional
  2. css3中的颜色
  3. slid.es – 创建在线幻灯片和演示文稿的最佳途径
  4. Eclipse+Maven创建webapp项目&lt;一&gt;
  5. 【C#】IDispose接口的应用
  6. sticky bit
  7. java编程思想第四版中 net.mindview.util包
  8. 备份apt目录节省下载时间
  9. jQuery获取属性之自己遇到的问题
  10. c#软件工程师笔试题
  11. 深入浅出Hive企业级架构优化、Hive Sql优化、压缩和分布式缓存(企业Hadoop应用核心产品)
  12. 建立ORACLE10G DATA GUARD---&amp;gt;Physical Standby
  13. JSF+EJB+JPA总体思路
  14. design principle:java 回调与委派/委托机制
  15. [Swift]LeetCode709. 转换成小写字母 | To Lower Case
  16. jmeter 之 if controller
  17. 使用jconsole监控JVM内存
  18. python日志模块的使用
  19. 学习笔记:Spark Streaming的核心
  20. 阶段01Java基础day24多线程+GUI

热门文章

  1. Detectron-MaskRCnn:Mask判别和获取前向Mask的标签
  2. 微信浏览器播放音频的问题:preload属性
  3. 梦想MxWeb3D协同设计平台 2019.01.24更新
  4. 10Java Server Pages 隐式对象
  5. 实验十二:SWING界面设计
  6. Luogu P4016 「 网络流 24 题 」负载平衡问题
  7. 访问请求参数request.getParameter()
  8. 解决window 10 安装软件2503 2502错误
  9. Windows学习总结(10)——Windows系统中常用的CMD命令详解
  10. CodeForces 362C