2018洛谷8月月赛第一题_U28036 Nagisa loves Tomoya
U28036 Nagisa loves Tomoya
题目描述:
可爱的古河渚得到了一个序列。她定义一次操作为将所有的ai变为ai+a(i mod n+1)
然后她会向你进行Q次询问,每次问你x,y意义为在第x次操作后位置y的元素是多少。
这个问题太简单了,我们的Nagisa轻易地就解决了这个问题。请问您能解决这个问题吗?
输入格式:
一个整数n,表示序列的长度。
接下来一行n个整数,表示这个序列。
接下来一行一个整数Q,表示询问次数
接下来Q行,每行两个整数x,y意义如题所示。
输出格式:
共Q行,每行一个整数表示询问的答案,请注意对998244353取膜。
题解:
找到翻x次每个数字被统计的次数的规律,即杨辉三角。
当k>n的时候,就拐回来,即第一项加上最后一项。
代码:
1 const 2 mo=998244353; 3 var 4 n,q:longint; 5 a,f:array [0..1000001] of int64; 6 x,y,ans,b:array [0..10001] of int64; 7 function min(o,p:longint):longint; 8 begin 9 if o<p then exit(o); 10 exit(p); 11 end; 12 13 procedure init; 14 var 15 i:longint; 16 begin 17 fillchar(ans,sizeof(ans),0); 18 fillchar(f,sizeof(f),0); 19 readln(n); 20 for i:=1 to n do 21 read(a[i]); 22 a[0]:=a[n]; 23 readln(q); 24 for i:=1 to q do 25 begin 26 readln(x[i],y[i]); 27 b[i]:=i; 28 end; 29 end; 30 31 procedure qsort(l,r:longint); 32 var 33 i,j,t,mid:longint; 34 begin 35 if l>r then exit; 36 i:=l; j:=r; 37 mid:=x[(l+r) div 2]; 38 repeat 39 while x[i]<mid do inc(i); 40 while x[j]>mid do dec(j); 41 if i<=j then 42 begin 43 t:=x[i]; x[i]:=x[j]; x[j]:=t; 44 t:=y[i]; y[i]:=y[j]; y[j]:=t; 45 t:=b[i]; b[i]:=b[j]; b[j]:=t; 46 inc(i); dec(j); 47 end; 48 until i>j; 49 qsort(i,r); 50 qsort(l,j); 51 end; 52 53 procedure main; 54 var 55 i,j,k,t:longint; 56 begin 57 f[0]:=1; 58 i:=1; k:=0; 59 while i<=q do 60 begin 61 while x[i]=k do 62 begin 63 for j:=0 to min(k,n-1) do 64 ans[b[i]]:=(ans[b[i]]+f[j]*a[(y[i]+j) mod n]) mod mo; 65 inc(i); 66 end; 67 while k<x[i] do 68 begin 69 t:=f[n-1]; 70 for j:=min(n,k) downto 1 do 71 f[j]:=(f[j]+f[j-1]) mod mo; 72 f[0]:=(f[0]+t) mod mo; 73 inc(k); f[k]:=1; 74 end; 75 end; 76 end; 77 78 procedure print; 79 var 80 i:longint; 81 begin 82 for i:=1 to q do 83 writeln(ans[i]); 84 end; 85 86 begin 87 init; 88 qsort(1,q); 89 main; 90 print; 91 end.
转载于:https://www.cnblogs.com/zyx-crying/p/9428787.html
2018洛谷8月月赛第一题_U28036 Nagisa loves Tomoya相关推荐
- Mdoi R2 洛谷4月月赛I
Mdoi R2 洛谷4月月赛I DIV2 A Car 题目描述 在MDOI市, 为了推行环保, 一辆车是否被限行的依据时车牌号和当天的日期. 车牌号的编码方式是这样的: **·**前三位均为大写字母, ...
- 洛谷10月月赛 2 t2 深海少女与胖头鱼
洛谷10月月赛 2 t2 深海少女与胖头鱼 题目链接 参考资料:洛谷10月赛2讲评ppt; 本篇题解考完那天就开始写,断断续续写到今天才写完 本题作为基础的期望dp题,用来学习期望dp还是很不错的 ( ...
- 「LuoguP4995」「洛谷11月月赛」 跳跳!(贪心
题目描述 你是一只小跳蛙,你特别擅长在各种地方跳来跳去. 这一天,你和朋友小 F 一起出去玩耍的时候,遇到了一堆高矮不同的石头,其中第 ii 块的石头高度为 h_ihi,地面的高度是 h_0 = 0 ...
- 洛谷11月月赛(284pts rank85)
https://www.luogu.org/contestnew/show/12006 我是比赛完后在去写的 这是我第一次打洛谷月赛,之前一次是比赛完才去看而且写了第一题就没写后面的了 284分,太水 ...
- P8318 『JROI-4』淘气的猴子(【LGR-108】洛谷 5 月月赛 I JROI R4 Div.2)
众所周知,jockbutt 是一个可爱的女孩纸. 题目描述 jockbutt 有一个正整数序列,长度为 n,分别为 a1,a2...an,她非常喜欢这个序列,平时都非常爱惜它们. 可是有一天,当 jo ...
- 【洛谷月赛】洛谷11月月赛·Day1
洛谷2614 计算器弹琴 本题地址: http://www.luogu.org/problem/show?pid=2614 题目描述 总所周知,计算器可以拿来干很多它本不应该干的事情,比如写作文.(参 ...
- 洛谷 2 月月赛 I 『MdOI R4』 (Div2) A ~ D 四题全,也许会有六题,超高质量题解 (Div.1E、F下辈子一定补)【每日亿题2 / 9】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A.P7337 『MdOI R4』Fun B.P7338 『MdOI R4』Color C.P7 ...
- 洛谷10月月赛II题解
Solution T1 首先,可以一眼看出这是一个完全图的一笔画问题.然后开始挖性质: ①根据欧拉图的性质,如果将我们一笔画中没有经过的边删去,那么剩下的节点的度数一定有000个或222个是奇数. 通 ...
- 洛谷9月月赛 康娜的线段树
题目描述 小林是个程序媛,不可避免地康娜对这种人类的"魔法"产生了浓厚的兴趣,于是小林开始教她OI. 今天康娜学习了一种叫做线段树的神奇魔法,这种魔法可以维护一段区间的信息,是非常 ...
最新文章
- 没听说过这些,就不要说你懂并发了,three。
- 阿里都在用的绩效管理聚能环,一篇文章学会
- 网络营销——网络营销专员浅析网站快照更新要点
- 实例化Bean的方法(基于xml配置)-http://blog.csdn.net/shymi1991/article/details/48153293
- 修改boot.ini
- java快速排序泛型,如何进行对C# .NET通用泛型进行快速排序?
- 解读GAN及其 2016 年度进展
- 【Java】日期/事件字符串包含TZ
- execl用宏查询mysql_关于EXCEL能否用宏直接连到oracle数据库然后取数据
- 【机器学习】NMF(非负矩阵分解)
- Jsoup代码解读之二-DOM相关对象
- c++中友元函数详解
- python opencv输出mp4_Python玩转视频处理(四):视频按场景进行分割
- java算法题走楼梯,程序员必学算法「动态规划」:爬楼梯(完全背包解法)
- X264_最简单的视频编码实现(YUV420编码H264)
- Java 图片验证码的实现和模拟简单的登录
- Python RE模块中search()和match()的区别
- 79. 基于 PHP 的用户认证
- 《程序员之禅》一一2.2 佛教中的“小鬼”
- java爬虫模拟登陆_java爬虫模拟登陆的实例详解
热门文章
- CRM ORDER_MAINTAIN
- js 数组遍历符合条件跳出循环体_Js数组遍历方法对比总结
- matlab中图像边缘提取,Matlab图像处理(五)——图像边缘提取
- 3.13课·········冒泡排序
- oracle数据库添加外键约束
- 海康工业相机SDK+OpenCV实例(2):RawDataFormatConvert详解
- 计算机二级ppt云计算,2021年全国计算机等级考试二级officeppt演示文稿题目.docx
- 仓储+调度,YOGO智能配送站能否改变外卖配送格局?...
- conda常用指令-持续更新中
- 最全面性能测试方案模板