当前位置: 首页 > news >正文

社区做图网站许昌网络公司

社区做图网站,许昌网络公司,网站做好怎么开始做推广,做qq头像的网站有哪些【题目来源】https://www.acwing.com/problem/content/2168/https://www.luogu.com.cn/problem/P3203【题目描述】 某天#xff0c;Lostmonkey 发明了一种超级弹力装置#xff0c;为了在他的绵羊朋友面前显摆#xff0c;他邀请小绵羊一起玩个游戏。 游戏一开始#xff0c;L…【题目来源】https://www.acwing.com/problem/content/2168/https://www.luogu.com.cn/problem/P3203【题目描述】 某天Lostmonkey 发明了一种超级弹力装置为了在他的绵羊朋友面前显摆他邀请小绵羊一起玩个游戏。 游戏一开始Lostmonkey 在地上沿着一条直线摆上 n 个装置每个装置设定初始弹力系数 ki当绵羊达到第 i 个装置时它会往后弹 ki 步达到第 iki 个装置若不存在第 iki 个装置则绵羊被弹飞。 绵羊想知道当它从第 i 个装置起步时被弹几次后会被弹飞。为了使得游戏更有趣Lostmonkey 可以修改某个弹力装置的弹力系数任何时候弹力系数均为正整数。【输入格式】 第一行包含一个整数 n表示地上有 n 个装置装置的编号从 0∼n−1。 接下来一行有 n 个正整数依次为那 n 个装置的初始弹力系数。 第三行有一个正整数 m表示操作次数。接下来 m 行每行至少有两个数 i,j。 1若 i1你要输出从编号为 j 的装置出发被弹几次后被弹飞 2若 i2则还会再输入一个正整数 k表示编号为 j 的弹力装置的系数被修改成 k。【输出格式】 对于每个 i1 的操作输出一行一个整数表示答案。【输入样例】 4 1 2 1 1 3 1 1 2 1 1 1 1【输出样例】 2 3【算法分析】 ● 本题其实就是动态树 LCT 的模板题这里用来练习分块。 ● 分块算法区间更新、区间查询代码实例详见https://blog.csdn.net/hnjzsyjyj/article/details/138863063本例介绍各数组下标从 0 开始的分块算法单点更新、单点查询代码。 ● 分块是用线段树的分区思想改良的暴力法。代码比线段树简单。效率比普通暴力法高。分块适合求解 mn10^5 规模的问题。或 m*sqrt(n)≈10^7 的问题。其中n 为元素个数m 为操作次数。 ● 分块操作的基本要素 1块的大小用 block 表示。通常令 blocksqrt(n)。其中n 为元素个数。 2块的数量用 cnt 表示。计算块的数量的代码如下 int blocksqrt(n); int cntn/block; if(n % block) cnt; 3块的左边界 le[] 及右边界 ri[]。 若用 le[i] 和 ri[i] 分别表示块 i 的第一个和最后一个元素的位置。 若下标从 1 开始则有 le[1]1, ri[1]block; le[2]block1, ri[2]2*block; …… le[i](i-1)*block1, ri[i]i*block; …… 若下标从 0 开始则有 le[0]0, ri[0]block-1; le[1]block, ri[1]2*block-1; …… le[i]i*block, ri[i](i1)*block-1; …… 4定义 pos[i] 为第 i 个元素所在的块。 若下标从 1 开始则有 pos[i](i-1)/block1。其中blocksqrt(n)。 若下标从 0 开始则有 pos[i]i/block。其中blocksqrt(n)。 ● 数组 step[x]表示从 x 跳出当前块所用步数数组 to[x]表示从 x 跳出当前块到达的位置。【算法代码】 #include bits/stdc.h using namespace std;const int maxn1e65; int a[maxn],le[maxn],ri[maxn]; int pos[maxn]; int to[maxn],step[maxn]; int n,m;void build(int n) {int blocksqrt(n);int cntn/block;if(n%block) cnt;for(int i0; icnt; i) {le[i]i*block;ri[i](i1)*block-1;}ri[cnt-1]n-1;for(int i0; in; i) pos[i]i/block; }void update(int L, int R) {for(int iR; iL; i--) {if(ia[i]ri[pos[i]]) {to[i]ia[i];step[i]1;} else {to[i]to[ia[i]];step[i]step[ia[i]]1;}} }int query(int x) {int ans0;while(xn) {ansstep[x];xto[x];}return ans; }int main() {cinn;for(int i0; in; i) cina[i];build(n), update(0,n-1);cinm;while(m--) {int op,x,y;cinopx;if(op1) coutquery(x)endl;else {ciny;a[x]y;update(le[pos[x]],ri[pos[x]]);}}return 0; }/* in: 4 1 2 1 1 3 1 1 2 1 1 1 1out: 2 3 */ 【参考文献】https://blog.csdn.net/hnjzsyjyj/article/details/138863063https://www.acwing.com/solution/content/92055/https://www.acwing.com/solution/content/170541/https://www.luogu.com.cn/problem/solution/P3203https://www.cnblogs.com/xuyixuan/p/9462001.html
http://www.hkea.cn/news/14534496/

相关文章:

  • 个人网站模板建站张家口网站建设费用
  • 石家庄网站设计工作室好的宝安网站建设
  • eclipse做企业网站深圳高端网站建设怎么样
  • 青海网站 建设北京网站关键词排名推广
  • 购物网站开发多少钱网站推广的全过程
  • 加强对网站建设淘宝运营学习
  • 国外网站建设嫣语赋如何扫描一个网站的漏洞
  • 中国建设银行网站企业策划公司名字
  • 金华专业网站制作公司东莞万江今天最新通知
  • 网站建设 中企动力泉州成都微信网站开发
  • 网站模板怎么编辑网站建设目标
  • 登录器显的窗口网站怎么做做空包网站合法吗
  • 济南网站建设专业政务网站建设经验做法
  • 做电影网站违法吗与网站建设有关的课程和知识点
  • 怎么取网页视频网站元素网站安全狗 fastcgi
  • 网站建设费计入销售费用的子目国家建设工程安全质量监督网站
  • 网站技术如何策划wordpress前端上传头像
  • 涉县网站开发模板之家下载的模板怎么打开
  • 建一个网站怎么赚钱吗哪些网站是同字形网页
  • 单屏网站设计wp wordpress
  • 自己切片做网站网站模块图
  • 做网站和微信公众平台如何定价在小型网站建设小组
  • 公司网站备案需要什么材料什么是标记型网页制作工具
  • 江西响应式网站制作十堰网络推广培训
  • 北京seo优化网站建设wordpress流量
  • 昆山建设信息网站网络营销方式有哪几种有哪些
  • 网站建设 中企动力烟台网站推广优化建设
  • 做相片软件网站小制作简单手工
  • 一起做玩具网站asp.net网站开发流程及相关工具
  • 做医院网站wordpress忘记了密码忘记