/ Randle /

记录详情

Runtime Error


  
# 状态 耗时 内存占用
#1 Accepted 4ms 328.0 KiB
#2 Accepted 2ms 316.0 KiB
#3 Accepted 2ms 324.0 KiB
#4 Accepted 26ms 452.0 KiB
#5 Accepted 22ms 324.0 KiB
#6 Accepted 21ms 320.0 KiB
#7 Accepted 779ms 328.0 KiB
#8 Accepted 814ms 320.0 KiB
#9 Runtime Error 8ms 1.062 MiB
#10 Runtime Error 3ms 1.066 MiB

代码

#include<bits/stdc++.h>
const int maxn=100000,mod=1e9+7;
inline const void read(long long &a)
{
	a=0;
	char c=getchar();
	while(c<'0'||c>'9')c=getchar();
	while(c>='0'&&c<='9')
	{
		a=(a<<1)+(a<<3)+c-'0';
		c=getchar();
	}
}
inline const void write(long long a)
{
	if(a>9)write(a/10);
	putchar(a%10+'0');
}
long long n,a[maxn],A,B,C,ans=0;
int main()
{
	read(n);read(a[1]);read(A);read(B);read(C);
	for(int i=2;i<=n;i++)a[i]=(a[i-1]*A+B)%C;
	for(int i=1;i<=n;i++)
	{
		long long p[maxn];
		int l=0,r;
		for(int j=i;j<=n;j++)
		{
			p[++l]=a[j];r=l;
			while(r>1&&p[r]>p[r-1]){std::swap(p[r],p[r-1]);--r;}
			for(int k=1;k<=l;k++)ans=(ans+p[k]*(l-k+1))%mod;
		}
	}
	write(ans);
	return 0;
}

信息

递交者
类型
递交
题目
区间求和 T3
题目数据
下载
语言
C++
递交时间
2017-10-07 14:26:59
评测时间
2017-10-07 14:33:36
评测机
分数
80
总耗时
1686ms
峰值内存
1.066 MiB