hzoi欢乐时刻(持续更新)
%%NC哥
%%Dybala
%%cbx吐露(bei ji can)真相
%%skyh×2
不愿透露姓名的群众无意间发现惊人秘密,
skyh默默坦白真相,
这究竟是人性的沦丧还是道德的泯灭?
%%kx
%%%skyh,%%Dy××la,%%Y×m,%%xuefeng
%%ex-zkt
%mzz
re%%%kx
%%%某不愿透露姓名的葱厨
今日段子:kx是hzoi最gay的人
%%%xuefengNB
%%zkt:我的板子NB(指300行)
re %%%xuefeng大刺客
%%%1419
mikufun/Yu-shi:我要讲个鬼故事,有一个......
yzh:是你爷爷~(捂耳唱歌)
fhw:o(三声)o(二声)o(一声)
Yu-shi:我能吞下shit拉出坚果
mikufun:Yu-shi你后边有。。。。。。有东西!!!(关灯作惊恐状)
yzh:ooo!!
fhw:是你爷爷!
yzh:ji ji boon!qj了Myy(自行领会)!!!
Yu-shi:我能将我的1e36条内裤染成白色
mikufun:你们不觉得......
fhw:是你爷爷!!!!
yzh:ooo!!!
fhw:ji ji boon!qj了Myy(自行领会)!!!
(无限循环)
(mikufun讲故事完全失败.jpd)
%%%skyh&&xuefeng(天皇和大刺客在一起大家兹不兹瓷哇)
%%%lsc
%%新错误
%%mikufun
'''
#include<bits/stdc++.h>
#define ll long long
#define re register
#define cri const register int
using namespace std;
inline int read(){
re int a=0;re char ch=getchar();
while(ch<'0'||ch>'9') ch=getchar();
while(ch>='0'&&ch<='9') a=(a<<1)+(a<<3)+ch-'0',ch=getchar();
return a;
}
char s[100010];
int n,m,t[30],ls[300010],rs[300010];
int f[300010],da[300010][30],be[30],en[30];
void build(cri k,cri l,cri r){
f[k]=-1,ls[k]=l,rs[k]=r;
if(l==r){
da[k][s[l]-'a']=1;
return;
}
int mid=l+r>>1;
build(k<<1,l,mid);build(k<<1|1,mid+1,r);
da[k][1]=da[k<<1][1]+da[k<<1|1][1];
da[k][2]=da[k<<1][2]+da[k<<1|1][2];
da[k][3]=da[k<<1][3]+da[k<<1|1][3];
da[k][4]=da[k<<1][4]+da[k<<1|1][4];
da[k][5]=da[k<<1][5]+da[k<<1|1][5];
da[k][6]=da[k<<1][6]+da[k<<1|1][6];
da[k][7]=da[k<<1][7]+da[k<<1|1][7];
da[k][8]=da[k<<1][8]+da[k<<1|1][8];
da[k][9]=da[k<<1][9]+da[k<<1|1][9];
da[k][10]=da[k<<1][10]+da[k<<1|1][10];
da[k][11]=da[k<<1][11]+da[k<<1|1][11];
da[k][12]=da[k<<1][12]+da[k<<1|1][12];
da[k][13]=da[k<<1][13]+da[k<<1|1][13];
da[k][14]=da[k<<1][14]+da[k<<1|1][14];
da[k][15]=da[k<<1][15]+da[k<<1|1][15];
da[k][16]=da[k<<1][16]+da[k<<1|1][16];
da[k][17]=da[k<<1][17]+da[k<<1|1][17];
da[k][18]=da[k<<1][18]+da[k<<1|1][18];
da[k][19]=da[k<<1][19]+da[k<<1|1][19];
da[k][20]=da[k<<1][20]+da[k<<1|1][20];
da[k][21]=da[k<<1][21]+da[k<<1|1][21];
da[k][22]=da[k<<1][22]+da[k<<1|1][22];
da[k][23]=da[k<<1][23]+da[k<<1|1][23];
da[k][24]=da[k<<1][24]+da[k<<1|1][24];
da[k][25]=da[k<<1][25]+da[k<<1|1][25];
da[k][0]=da[k<<1][0]+da[k<<1|1][0];
}
void cs(cri k,cri L,cri R,cri x){
if(R<L) return;
if(ls[k]>=L&&rs[k]<=R){
f[k]=x;
for(re int i=0;i<=25;i++)
if(i==x) da[k][i]=rs[k]-ls[k]+1;
else da[k][i]=0;
return;
}
if(f[k]!=-1){
f[k<<1]=f[k<<1|1]=f[k],
da[k<<1][0]=da[k<<1|1][0]=0,
da[k<<1][1]=da[k<<1|1][1]=0,
da[k<<1][2]=da[k<<1|1][2]=0,
da[k<<1][3]=da[k<<1|1][3]=0,
da[k<<1][4]=da[k<<1|1][4]=0,
da[k<<1][5]=da[k<<1|1][5]=0,
da[k<<1][6]=da[k<<1|1][6]=0,
da[k<<1][7]=da[k<<1|1][7]=0,
da[k<<1][8]=da[k<<1|1][8]=0,
da[k<<1][9]=da[k<<1|1][9]=0,
da[k<<1][10]=da[k<<1|1][10]=0,
da[k<<1][11]=da[k<<1|1][11]=0,
da[k<<1][12]=da[k<<1|1][12]=0,
da[k<<1][13]=da[k<<1|1][13]=0,
da[k<<1][14]=da[k<<1|1][14]=0,
da[k<<1][15]=da[k<<1|1][15]=0,
da[k<<1][16]=da[k<<1|1][16]=0,
da[k<<1][17]=da[k<<1|1][17]=0,
da[k<<1][18]=da[k<<1|1][18]=0,
da[k<<1][19]=da[k<<1|1][19]=0,
da[k<<1][20]=da[k<<1|1][20]=0,
da[k<<1][21]=da[k<<1|1][21]=0,
da[k<<1][22]=da[k<<1|1][22]=0,
da[k<<1][23]=da[k<<1|1][23]=0,
da[k<<1][24]=da[k<<1|1][24]=0,
da[k<<1][25]=da[k<<1|1][25]=0,
da[k<<1][f[k]]=rs[k<<1]-ls[k<<1]+1,
da[k<<1|1][f[k]]=rs[k<<1|1]-ls[k<<1|1]+1,
f[k]=-1;
}
re int mid=ls[k]+rs[k]>>1;
if(L<=mid) cs(k<<1,L,R,x);
if(R>mid) cs(k<<1|1,L,R,x);
da[k][1]=da[k<<1][1]+da[k<<1|1][1];
da[k][2]=da[k<<1][2]+da[k<<1|1][2];
da[k][3]=da[k<<1][3]+da[k<<1|1][3];
da[k][4]=da[k<<1][4]+da[k<<1|1][4];
da[k][5]=da[k<<1][5]+da[k<<1|1][5];
da[k][6]=da[k<<1][6]+da[k<<1|1][6];
da[k][7]=da[k<<1][7]+da[k<<1|1][7];
da[k][8]=da[k<<1][8]+da[k<<1|1][8];
da[k][9]=da[k<<1][9]+da[k<<1|1][9];
da[k][10]=da[k<<1][10]+da[k<<1|1][10];
da[k][11]=da[k<<1][11]+da[k<<1|1][11];
da[k][12]=da[k<<1][12]+da[k<<1|1][12];
da[k][13]=da[k<<1][13]+da[k<<1|1][13];
da[k][14]=da[k<<1][14]+da[k<<1|1][14];
da[k][15]=da[k<<1][15]+da[k<<1|1][15];
da[k][16]=da[k<<1][16]+da[k<<1|1][16];
da[k][17]=da[k<<1][17]+da[k<<1|1][17];
da[k][18]=da[k<<1][18]+da[k<<1|1][18];
da[k][19]=da[k<<1][19]+da[k<<1|1][19];
da[k][20]=da[k<<1][20]+da[k<<1|1][20];
da[k][21]=da[k<<1][21]+da[k<<1|1][21];
da[k][22]=da[k<<1][22]+da[k<<1|1][22];
da[k][23]=da[k<<1][23]+da[k<<1|1][23];
da[k][24]=da[k<<1][24]+da[k<<1|1][24];
da[k][25]=da[k<<1][25]+da[k<<1|1][25];
da[k][0]=da[k<<1][0]+da[k<<1|1][0];
}
void add(cri k,cri L,cri R){
if(ls[k]>=L&&rs[k]<=R){
for(re int i=0;i<26;i++)
if(be[i]<=rs[k]&&en[i]>=ls[k])
cs(k,max(ls[k],be[i]),min(en[i],rs[k]),i);
return;
}
if(f[k]!=-1){
f[k<<1]=f[k<<1|1]=f[k],
da[k<<1][0]=da[k<<1|1][0]=0,
da[k<<1][1]=da[k<<1|1][1]=0,
da[k<<1][2]=da[k<<1|1][2]=0,
da[k<<1][3]=da[k<<1|1][3]=0,
da[k<<1][4]=da[k<<1|1][4]=0,
da[k<<1][5]=da[k<<1|1][5]=0,
da[k<<1][6]=da[k<<1|1][6]=0,
da[k<<1][7]=da[k<<1|1][7]=0,
da[k<<1][8]=da[k<<1|1][8]=0,
da[k<<1][9]=da[k<<1|1][9]=0,
da[k<<1][10]=da[k<<1|1][10]=0,
da[k<<1][11]=da[k<<1|1][11]=0,
da[k<<1][12]=da[k<<1|1][12]=0,
da[k<<1][13]=da[k<<1|1][13]=0,
da[k<<1][14]=da[k<<1|1][14]=0,
da[k<<1][15]=da[k<<1|1][15]=0,
da[k<<1][16]=da[k<<1|1][16]=0,
da[k<<1][17]=da[k<<1|1][17]=0,
da[k<<1][18]=da[k<<1|1][18]=0,
da[k<<1][19]=da[k<<1|1][19]=0,
da[k<<1][20]=da[k<<1|1][20]=0,
da[k<<1][21]=da[k<<1|1][21]=0,
da[k<<1][22]=da[k<<1|1][22]=0,
da[k<<1][23]=da[k<<1|1][23]=0,
da[k<<1][24]=da[k<<1|1][24]=0,
da[k<<1][25]=da[k<<1|1][25]=0,
da[k<<1][f[k]]=rs[k<<1]-ls[k<<1]+1,
da[k<<1|1][f[k]]=rs[k<<1|1]-ls[k<<1|1]+1,
f[k]=-1;
}
re int mid=ls[k]+rs[k]>>1;
if(L<=mid) add(k<<1,L,R);
if(R>mid) add(k<<1|1,L,R);
da[k][1]=da[k<<1][1]+da[k<<1|1][1];
da[k][2]=da[k<<1][2]+da[k<<1|1][2];
da[k][3]=da[k<<1][3]+da[k<<1|1][3];
da[k][4]=da[k<<1][4]+da[k<<1|1][4];
da[k][5]=da[k<<1][5]+da[k<<1|1][5];
da[k][6]=da[k<<1][6]+da[k<<1|1][6];
da[k][7]=da[k<<1][7]+da[k<<1|1][7];
da[k][8]=da[k<<1][8]+da[k<<1|1][8];
da[k][9]=da[k<<1][9]+da[k<<1|1][9];
da[k][10]=da[k<<1][10]+da[k<<1|1][10];
da[k][11]=da[k<<1][11]+da[k<<1|1][11];
da[k][12]=da[k<<1][12]+da[k<<1|1][12];
da[k][13]=da[k<<1][13]+da[k<<1|1][13];
da[k][14]=da[k<<1][14]+da[k<<1|1][14];
da[k][15]=da[k<<1][15]+da[k<<1|1][15];
da[k][16]=da[k<<1][16]+da[k<<1|1][16];
da[k][17]=da[k<<1][17]+da[k<<1|1][17];
da[k][18]=da[k<<1][18]+da[k<<1|1][18];
da[k][19]=da[k<<1][19]+da[k<<1|1][19];
da[k][20]=da[k<<1][20]+da[k<<1|1][20];
da[k][21]=da[k<<1][21]+da[k<<1|1][21];
da[k][22]=da[k<<1][22]+da[k<<1|1][22];
da[k][23]=da[k<<1][23]+da[k<<1|1][23];
da[k][24]=da[k<<1][24]+da[k<<1|1][24];
da[k][25]=da[k<<1][25]+da[k<<1|1][25];
da[k][0]=da[k<<1][0]+da[k<<1|1][0];
}
void get(cri k,cri L,cri R){
if(ls[k]>=L&&R>=rs[k]){
for(re int i=0;i<26;i++)
t[i]+=da[k][i];
return;
}
if(f[k]!=-1){
f[k<<1]=f[k<<1|1]=f[k],
da[k<<1][0]=da[k<<1|1][0]=0,
da[k<<1][1]=da[k<<1|1][1]=0,
da[k<<1][2]=da[k<<1|1][2]=0,
da[k<<1][3]=da[k<<1|1][3]=0,
da[k<<1][4]=da[k<<1|1][4]=0,
da[k<<1][5]=da[k<<1|1][5]=0,
da[k<<1][6]=da[k<<1|1][6]=0,
da[k<<1][7]=da[k<<1|1][7]=0,
da[k<<1][8]=da[k<<1|1][8]=0,
da[k<<1][9]=da[k<<1|1][9]=0,
da[k<<1][10]=da[k<<1|1][10]=0,
da[k<<1][11]=da[k<<1|1][11]=0,
da[k<<1][12]=da[k<<1|1][12]=0,
da[k<<1][13]=da[k<<1|1][13]=0,
da[k<<1][14]=da[k<<1|1][14]=0,
da[k<<1][15]=da[k<<1|1][15]=0,
da[k<<1][16]=da[k<<1|1][16]=0,
da[k<<1][17]=da[k<<1|1][17]=0,
da[k<<1][18]=da[k<<1|1][18]=0,
da[k<<1][19]=da[k<<1|1][19]=0,
da[k<<1][20]=da[k<<1|1][20]=0,
da[k<<1][21]=da[k<<1|1][21]=0,
da[k<<1][22]=da[k<<1|1][22]=0,
da[k<<1][23]=da[k<<1|1][23]=0,
da[k<<1][24]=da[k<<1|1][24]=0,
da[k<<1][25]=da[k<<1|1][25]=0,
da[k<<1][f[k]]=rs[k<<1]-ls[k<<1]+1,
da[k<<1|1][f[k]]=rs[k<<1|1]-ls[k<<1|1]+1,
f[k]=-1;
}
re int mid=ls[k]+rs[k]>>1;
if(L<=mid) get(k<<1,L,R);
if(R>mid) get(k<<1|1,L,R);
}
void all(cri k){
if(ls[k]==rs[k]){
for(re int i=0;i<26;i++)
if(da[k][i]){
s[ls[k]]=i+'a';
return;
}
return;
}
if(f[k]!=-1){
f[k<<1]=f[k<<1|1]=f[k],
da[k<<1][0]=da[k<<1|1][0]=0,
da[k<<1][1]=da[k<<1|1][1]=0,
da[k<<1][2]=da[k<<1|1][2]=0,
da[k<<1][3]=da[k<<1|1][3]=0,
da[k<<1][4]=da[k<<1|1][4]=0,
da[k<<1][5]=da[k<<1|1][5]=0,
da[k<<1][6]=da[k<<1|1][6]=0,
da[k<<1][7]=da[k<<1|1][7]=0,
da[k<<1][8]=da[k<<1|1][8]=0,
da[k<<1][9]=da[k<<1|1][9]=0,
da[k<<1][10]=da[k<<1|1][10]=0,
da[k<<1][11]=da[k<<1|1][11]=0,
da[k<<1][12]=da[k<<1|1][12]=0,
da[k<<1][13]=da[k<<1|1][13]=0,
da[k<<1][14]=da[k<<1|1][14]=0,
da[k<<1][15]=da[k<<1|1][15]=0,
da[k<<1][16]=da[k<<1|1][16]=0,
da[k<<1][17]=da[k<<1|1][17]=0,
da[k<<1][18]=da[k<<1|1][18]=0,
da[k<<1][19]=da[k<<1|1][19]=0,
da[k<<1][20]=da[k<<1|1][20]=0,
da[k<<1][21]=da[k<<1|1][21]=0,
da[k<<1][22]=da[k<<1|1][22]=0,
da[k<<1][23]=da[k<<1|1][23]=0,
da[k<<1][24]=da[k<<1|1][24]=0,
da[k<<1][25]=da[k<<1|1][25]=0,
da[k<<1][f[k]]=rs[k<<1]-ls[k<<1]+1,
da[k<<1|1][f[k]]=rs[k<<1|1]-ls[k<<1|1]+1,
f[k]=-1;
}
re int mid=ls[k]+rs[k]>>1;
all(k<<1),all(k<<1|1);
}
int main(){
int x,y,z,o;
scanf("%d%d%s",&n,&m,s+1);
build(1,1,n);
for(re int i=1;i<=m;i++){
x=read();y=read();z=read();
o=x;
get(1,x,y);
if(z)
for(re int j=0;j<26;j++){
if(t[j]) be[j]=o,en[j]=o+t[j]-1,o=en[j]+1;
else be[j]=en[j]=0;
}
else
for(re int j=25;j>=0;j--){
if(t[j]) be[j]=o,en[j]=o+t[j]-1,o=en[j]+1;
else be[j]=en[j]=0;
}
memset(t,0,sizeof t);
add(1,x,y);
}
all(1);
for(re int i=1;i<=n;i++) putchar(s[i]);
}
'''
%%某不愿透露姓名的***(忽略背景,我什么也看不出来233)
(友情提醒:踢球需谨慎,生命价更高)
%%%天(舔)皇
hzoi欢乐时刻(持续更新)的更多相关文章
- BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js
BAT 前端开发面经 —— 吐血总结 目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...
- iPadOS 更新日志 - 持续更新中
本文只是为了简单记录一下每个正式版本发布时间和更新内容,只有这个初衷,从2019年9月25日开始,将会持续更新. iPadOS 13.1 - 2019年9月25日 经全新命名的 iPadOS 是一款强 ...
- 4W字的后端面试知识点总结(持续更新)
点赞再看,养成习惯,微信搜索[三太子敖丙]关注这个互联网苟且偷生的工具人. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的 ...
- 深入理解Java虚拟机--个人总结(持续更新)
深入理解Java虚拟机--个人总结(持续更新) 每天按照书本学一点,会把自己的总结思考写下来,形成输出,持续更新,立帖为证 -- 2020年7月7日 开始第一次学习 -- 2020年7月8日 今天在百 ...
- JVM面试题(史上最强、持续更新、吐血推荐)
文章很长而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三部 ...
- JUC并发包与容器类 - 面试题(一网打净,持续更新)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- Redis 面试题 - 收藏版 (持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- Zookeeper 面试题(持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- 消息队列面试题、RabbitMQ面试题、Kafka面试题、RocketMQ面试题 (史上最全、持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
随机推荐
- Windows Azure Virtual Machine (38) 跨租户迁移使用托管磁盘的Azure虚拟机
<Windows Azure Platform 系列文章目录> 背景介绍: (1)我们建议使用Azure Manage Disk托管磁盘来创建Azure虚拟机 (2)使用托管磁盘的好处是, ...
- HTML连载40-盒子宽度和高度的练习、box-sizing属性
一.判断方法 1.判断是否元素宽高为200的盒子 只需要看:边框+内边距+内容宽度/内容高度的值是否等于200 2.判断是否内容宽高为100的盒子 只需要看:width和heght的值是否等于100 ...
- iOS:获取一周7天的日期(年-月-日-星期)
一.介绍 在开发中,日期的使用绝对是离不了的,跟业务的关联性太强了,例如课程表.有的时候我们不需要课程表,但是需要获取一周7天的日期,这一周内的日期,我觉得有两种理解: 1.获取当天开始的一周日期,当 ...
- 电商项目搜寻功能(分页,高亮,solr,规格过滤,价格的排序)
package cn.wangju.core.service; import cn.wangju.core.pojo.item.Item; import cn.wangju.core.util.Con ...
- raspberry pi 4b 常见的一些配置信息
实验记录地址 https://gitee.com/dhclly/icepi.raspberry-pi 针脚图 面包板 gnd & vcc VCC:电路的供电电压: GND:指板子里面总的地线. ...
- 禁用software reporter tool.exe 解决CPU高占用率的问题
或者 或者 C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\SwReporter\36.184.200 下编辑 manifes ...
- 【目标检测】关于如何在 PyTorch1.x + Cuda10 + Ubuntu18.0 运行 CenterNet 源码
这几天一直在尝试运行CenterNet的源码,但是出现各种问题,本已经打算放弃,中午吃完饭又不甘心,打算重新安装环境再来一遍,没想到竟然成功了.所以,坚持下去,黑夜过后便是黎明. 注意:gcc/g++ ...
- badboy录制过程中出现当前页面的脚本发现错误
为什么出现这个提示 , 是因为访问者使用的浏览器不能完全支持页面里的脚本,毕竟版本太老,一直没有更新 ,这个版本错误并不会影响使用,有强迫症的可以关闭下,
- python中class的总结
思维导图文件:https://files-cdn.cnblogs.com/files/benjieming/class%E6%9C%BA%E5%88%B6.zip
- 【转载】Visual Studio2017如何设置打包发布的WinForm应用程序的版本号
在Visual Studio 2017集成开发工具中,打包发布Winform窗体应用程序的时候,支持设置此次打包发布的Winform窗体应用程序对应的版本号信息,并且支持一次设置后,后续的所有发布版本 ...