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

汽车网站设计模板邯郸市建设局网站

汽车网站设计模板,邯郸市建设局网站,wordpress如何让主题支持子主题,网站检测报告哪里做描述 BZOJ: http://www.lydsy.com/JudgeOnline/problem.php?id1798 Codevs: http://codevs.cn/problem/2216/ 给出n和行星的质量,进行m次操作: 1.将[l,r]区间内所有行星质量*c. 2.将[l,r]区间内所有行星质量c. 3.询问[l,r]区间内行星质量和. 分析 双标记线段树,多加一个乘法的…描述 BZOJ: http://www.lydsy.com/JudgeOnline/problem.php?id1798 Codevs: http://codevs.cn/problem/2216/ 给出n和行星的质量,进行m次操作: 1.将[l,r]区间内所有行星质量*c. 2.将[l,r]区间内所有行星质量c. 3.询问[l,r]区间内行星质量和.   分析 双标记线段树,多加一个乘法的标记.a[k]位置的标记表示的是要传给a[k]的子节点的值,乘法位置为a[k].f,加法为a[k].p,表示的是先乘后加.按照先乘后加的规定,当跟新值时,axb变为(axb)*c1c2axc1bc1c2(axc1)(bc1c2),也就是标记向下传递(push_down)的时候,乘法位置要乘,加法位置要先乘后加. 之前一直wa,最后才发现数组没开够... 感觉好像把乘法转化为加法也能做...但没尝试. 注意: 1.最好在确保扔给函数的参数都是取过模的,这样不容易出错. 2.可以不用long long定义,在乘法的时候强制转换一下就好了.   1 #includecstdio2 #includealgorithm3 #define ll long long4 #define lson 2*k5 #define rson 2*k16 7 const int maxn1e55;8 int n,m,mod;9 int w[maxn];10 struct node { int l,r,x,f,p; }a[3*maxn];11 12 void build_tree(int l,int r,int k)13 {14 a[k].ll; a[k].rr; a[k].f1; a[k].p0;15 if(lr)16 {17 a[k].xw[l]; 18 return; 19 } 20 int midl(r-l)/2;21 build_tree(l,mid,lson);22 build_tree(mid1,r,rson);23 a[k].x(a[lson].xa[rson].x)%mod;24 }25 26 inline void cal(int k,int f,int p)27 {28 a[k].x(int)((((ll)a[k].x*(ll)f)%mod((ll)(a[k].r-a[k].l1)%mod)*(ll)p)%mod);29 a[k].f(int)(((ll)a[k].f*(ll)f)%mod);30 a[k].p(int)((((ll)a[k].p*(ll)f)%modp)%mod);31 }32 33 inline void push_down(int k)34 {35 cal(lson,a[k].f,a[k].p);36 cal(rson,a[k].f,a[k].p);37 a[k].f1;38 a[k].p0;39 }40 41 void update(int l,int r,int k,int f,int p)42 {43 if(a[k].lla[k].rr)44 {45 cal(k,f,p);46 return;47 }48 if(a[k].f!1||a[k].p)49 {50 push_down(k);51 }52 int mida[k].l(a[k].r-a[k].l)/2;53 if(rmid)54 {55 update(l,r,lson,f,p);56 }57 else if(lmid)58 {59 update(l,r,rson,f,p);60 }61 else62 {63 update(l,mid,lson,f,p);64 update(mid1,r,rson,f,p);65 }66 a[k].x(a[lson].xa[rson].x)%mod;67 }68 69 int search(int l,int r,int k)70 {71 if(a[k].lla[k].rr)72 {73 return a[k].x;74 }75 if(a[k].f!1||a[k].p)76 {77 push_down(k);78 }79 int mida[k].l(a[k].r-a[k].l)/2;80 if(rmid)81 {82 return (search(l,r,lson)%mod);83 }84 else if(lmid)85 {86 return (search(l,r,rson)%mod);87 }88 else89 {90 return ((search(l,mid,lson)search(mid1,r,rson))%mod);91 }92 }93 94 int main()95 {96 #ifndef ONLINE_JUDGE97 freopen(star.in,r,stdin);98 freopen(star.out,w,stdout);99 #endif 100 scanf(%d%d,n,mod); 101 102 for(int i1;in;i) 103 { 104 scanf(%d,w[i]); 105 } 106 build_tree(1,n,1); 107 scanf(%d,m); 108 int qry,l,r,c; 109 for(int i1;im;i) 110 { 111 scanf(%d%d%d,qry,l,r); 112 switch(qry) 113 { 114 case 1: 115 scanf(%d,c); 116 c%mod; 117 update(l,r,1,c,0); 118 break; 119 case 2: 120 scanf(%d,c); 121 c%mod; 122 update(l,r,1,1,c); 123 break; 124 case 3: 125 printf(%d\n,search(l,r,1)); 126 break; 127 } 128 } 129 #ifndef ONLINE_JUDGE 130 fclose(stdin); 131 fclose(stdout); 132 system(star.out); 133 #endif 134 return 0; 135 } View Code  转载于:https://www.cnblogs.com/Sunnie69/p/5436371.html
http://www.pierceye.com/news/275875/

相关文章:

  • 做白酒的网站怎么查网站建设是哪家公司
  • 网站域名密码免费网站推广产品
  • 网站建设一般要多少费用申请网站官网
  • 金融网站织梦模板二手车网站建设
  • 怎么自己写代码做网站做网站必须用域名吗
  • 重庆营销网站建设平台怎么添加wordpress模板
  • 网站赚取广告费深圳个人外贸网站建
  • 在线销售型的网站巢湖城市建设投资有限公司网站
  • 苏州高端网站建设设计程序源代码网站
  • 基本原理网站建设文档怎么做网站链接
  • 网站建设出售门户网站有哪些推广分类
  • 企业网站制作一般多少钱做ppt的兼职网站有哪些
  • 分公司可以建设网站淘宝联盟怎么推广
  • 苏州网站设计哪家公司好童程童美编程地址在哪里
  • 软文营销的成功案例百度优化怎么做
  • 公司网站开发怎么收费优化方案英语必修三
  • 网站改版阿里云怎么做网站301定向温州网站运营
  • 免费做简历网站有哪些网站建设与网页制作招聘
  • 怎么到国外网站去接模具订单做潍坊微信网站开发
  • 做船公司网站青海公司网站建设哪家好
  • 制作网站公司合同注意事项沈阳高端网站
  • 企业网站备案时间网站建设的服务和质量
  • 提供视频下载的网站建网站开发费用
  • 深圳电商网站开发公司上海公司排名
  • 网站建设时间规划表学校网站网页制作
  • 龙岗建网站工信部网站备案进度查询
  • 个人网站域名名字wordpress文章页获取目录名称
  • 新公司做网站有效果吗seo推广营销公司
  • 做网络推广要做网站吗网站建设首页模板
  • 陕西网站设计高端网站设计公司名单