Codeforces Global Round 2: D.Frets On Fire

题目链接:https://codeforces.com/contest/1119/problem/D
题意:1e5个数,每个数是一个起点,从起点每次+1,1e18次。询问1e5次,在这个区间内不同的数有多少。
在这里插入图片描述
思路:
很容易想到暴力怎么做,但O(n*m),TLE–暴力不会的话这题就以后看吧
怎么优化,Olognm或者预处理或者离线操作On+m.
主要讲讲离线操作(其他我没想出来),我们做一次每个数的差分数组,然后询问记录也存下来,存到一个数组里面,排一次序。然后离线操作,跑一遍这个新存的数组。具体步骤不知道怎么用语言表述,对着代码把样例模拟一遍你就懂了。
在这里插入图片描述

https://paste.ubuntu.com/p/Y7HkFbg9zN/
在这里插入图片描述

posted @ 2019-04-08 16:10  AlexPanda  阅读(81)  评论(0编辑  收藏  举报