做视频解析网站是犯法的么网站备案时间就是正式上线时间吗
news/
2025/10/5 20:35:08/
文章来源:
做视频解析网站是犯法的么,网站备案时间就是正式上线时间吗,网站页面优化方法有哪些内容,许昌北京网站建设题目描述 给出一个初始序列fA1;A2;:::Ang#xff0c;要求你编写程序支持如下操作#xff1a; 1. ADDxyD#xff1a;给子序列fAx:::Ayg的每个元素都加上D。例如对f1,2, 3,4,5g执行ADD 241 会得到f1,3,4,5,5g。 2. REVERSExy#xff1a;将子序列fAx:::Ayg翻转。例…题目描述 给出一个初始序列fA1;A2;:::Ang要求你编写程序支持如下操作 1. ADDxyD给子序列fAx:::Ayg的每个元素都加上D。例如对f1,2, 3,4,5g执行ADD 241 会得到f1,3,4,5,5g。 2. REVERSExy将子序列fAx:::Ayg翻转。例如对f1,2,3,4,5g执 行REVERSE 24会得到f1,4,3,2,5g。 3. REVOLVExyT将子序列fAx:::Ayg旋转T个单位。例如 对f1,2,3,4,5g执行REVOLVE 242会得到f1,3,4,2,5g。 4. INSERTxP在Ax后插入P。例如对f1,2,3,4,5g执行INSERT 24会得到f1,2,4,3,4,5g。 5. DELETEx删去Ax。例如对f1,2,3,4,5g执行DELETE 2会得 到f1,3,4,5g。 6. MINxy查询子序列fAx:::Ayg中的最小元素。例如对于序列f1, 2,3,4,5g询问MIN 24的返回应为2。 输入 第一行包含一个整数n表示初始序列的长度。 以下n行每行包含一个整数描述初始的序列。 接下来一行包含一个整数m表示操作的数目。 以下m行每行描述一个操作。 输出 对于所有MIN操作输出正确的答案每行一个。 样例输入 5 1 2 3 4 5 2 ADD 2 4 1 MIN 4 5 样例输出 5 提示 输入、输出以及中间运算结果均不会超过32位整数。对于30%的数据n;m 6 1000;对于100%的数据n;m 6 100000。 序列终结者加强版注意旋转操作的T可能大于区间长因此要取模其他操作比较常规插入删除直接断裂开之后在中间删掉或者加入区间操作将treap断裂成三段对中间一段打标记即可标记在遍历点时下传。 #includeset
#includemap
#includestack
#includequeue
#includecmath
#includecstdio
#includevector
#includebitset
#includecstring
#includeiostream
#includealgorithm
#define ll long long
using namespace std;
int cnt;
int n,m;
int root;
int L,R,C;
int w,x,y,z;
char ch[16];
int a[300010];
int s[300010];
int r[300010];
int v[300010];
int mn[300010];
int ls[300010];
int rs[300010];
int size[300010];
int build(int val)
{int rtcnt;v[rt]val;size[rt]1;r[rt]rand();mn[rt]val;return rt;
}
void rotate(int rt)
{swap(ls[rt],rs[rt]);s[rt]^1;
}
void add(int rt,int val)
{a[rt]val;mn[rt]val;v[rt]val;
}
void pushup(int rt)
{size[rt]size[ls[rt]]size[rs[rt]]1;mn[rt]v[rt];if(ls[rt]){mn[rt]min(mn[rt],mn[ls[rt]]);}if(rs[rt]){mn[rt]min(mn[rt],mn[rs[rt]]);}
}
void pushdown(int rt)
{if(s[rt]){if(ls[rt]){rotate(ls[rt]);}if(rs[rt]){rotate(rs[rt]);}s[rt]^1;}if(a[rt]){if(ls[rt]){add(ls[rt],a[rt]);}if(rs[rt]){add(rs[rt],a[rt]);}a[rt]0;}
}
int merge(int x,int y)
{if(!x||!y){return xy;}pushdown(x);pushdown(y);if(r[x]r[y]){rs[x]merge(rs[x],y);pushup(x);return x;}else{ls[y]merge(x,ls[y]);pushup(y);return y;}
}
void split(int rt,int k,int x,int y)
{if(!rt){xy0;return ;}pushdown(rt);if(size[ls[rt]]k){xrt;split(rs[rt],k-size[ls[rt]]-1,rs[x],y);}else{yrt;split(ls[rt],k,x,ls[y]);}pushup(rt);
}
int main()
{srand(20020419);scanf(%d,n);for(int i1;in;i){scanf(%d,x);rootmerge(root,build(x));}scanf(%d,m);while(m--){scanf(%s,ch);if(ch[0]A){scanf(%d%d%d,L,R,C);split(root,L-1,x,y);split(y,R-L1,y,z);add(y,C);rootmerge(merge(x,y),z);}else if(ch[0]Rch[3]E){scanf(%d%d,L,R);split(root,L-1,x,y);split(y,R-L1,y,z);rotate(y);rootmerge(merge(x,y),z);}else if(ch[0]Rch[3]O){scanf(%d%d%d,L,R,C);C%(R-L1);if(C0){continue;}C(R-L1)-C;split(root,L-1,x,y);split(y,R-L1,y,z);split(y,C,y,w);rootmerge(merge(x,merge(w,y)),z);}else if(ch[0]I){scanf(%d%d,L,C);split(root,L,x,y);rootmerge(merge(x,build(C)),y);}else if(ch[0]D){scanf(%d%d,L,C);split(root,L-1,x,y);split(y,1,y,z);rootmerge(x,z);}else{scanf(%d%d,L,R);split(root,L-1,x,y);split(y,R-L1,y,z);printf(%d\n,mn[y]);rootmerge(merge(x,y),z);}}
} 转载于:https://www.cnblogs.com/Khada-Jhin/p/9688135.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928710.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!