题目名称 2193. [HZOI 2015] 区间统计
输入输出 s.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 GravatarAglove 于2016-03-30加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:5, 提交:15, 通过率:33.33%
Gravatar哒哒哒哒哒! 100 0.763 s 191.24 MiB C++
GravatarFoolMike 100 0.988 s 38.43 MiB C++
GravatarL_in 100 1.286 s 38.46 MiB C++
Gravatar‎MistyEye 100 1.949 s 41.48 MiB C++
GravatarAglove 100 2.030 s 191.05 MiB C++
Gravatar‎MistyEye 80 2.580 s 76.61 MiB C++
Gravatar‎MistyEye 80 2.751 s 68.95 MiB C++
Gravatar‎MistyEye 70 1.396 s 34.61 MiB C++
Gravatar‎MistyEye 70 3.359 s 103.28 MiB C++
Gravatar哒哒哒哒哒! 10 0.751 s 191.24 MiB C++
关于 区间统计 的近10条评论(全部评论)
回复 @Aglove :
秒啊!sort一下并在链表中删除,就做到了O(1),而且不用担心去重的问题了,真是妙
GravatarFoolMike
2017-07-01 15:47 4楼
少取一次模,结果狂WA不止
Gravatar‎MistyEye
2017-03-03 17:13 3楼
@白天<=>黑 嘿嘿嘿
Gravatar一個人的雨
2016-03-30 15:20 2楼
题解戳http://www.cnblogs.com/joyouth/p/5333408.html
本蒟蒻的blog
欢迎大家来踩
GravatarAglove
2016-03-30 15:19 1楼

2193. [HZOI 2015] 区间统计

★★☆   输入文件:s.in   输出文件:s.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

小A和小B在玩一个游戏。

他们拥有一个数列。

小A在该数列中选择出最大的那个数,然后移出该数列。

小B在剩下的数列中选择出最大的那个数,并乘上小A的那个值,作为他的答案。

那么现在问题来了。

他们现在想换一种玩法,把该数列长度大于等于2的区间(即n*(n-1)/2个区间)单独作为一个数列拿出来,然后做一次上述的游戏,然后计算出小B所有的答案,考虑到输出那么多数比较困难,因此他们想知道所有答案和对 1000000007(10^9+7) 取模后的值。

【输入格式】

第一行五个数n,a0,a,b,p(1<=n,a0,a,b,p<=2000000)。

该数列的构造方法为,a[i]=(a[i-1]*a+b)%p。该数列的下标为1~n。

【输出格式】

1行,表示答案。

【样例输入】

4 1 1 1 3

【样例输出】

10

【提示】

样例解释:

该数列为2,0,1,2

对于1-2的区间答案为0

对于1-3的区间答案为2

对于1-4的区间答案为4

对于2-3的区间答案为0

对于2-4的区间答案为2

对于3-4的区间答案为2

【来源】

51Nod