比赛 2024暑期C班集训2 评测结果 RRRRRRRRRR
题目名称 大力枚举 最终得分 0
用户昵称 健康铀 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2024-07-02 09:33:55
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
long long n,a[100010],ans,dp[100010][4],mod=1000000007;
inline int read()
{
	int k=0,f=1;
    char c=getchar();
	for(;!isdigit(c);c=getchar()) if(c=='-') f=-1;
	for(;isdigit(c);c=getchar()) k=(k<<1)+(k<<3)+(c&15);
	return k*f;
}
int main(){
    freopen("ex_enumerate.in","r",stdin);
    freopen("ex_enumerate.out","w",stdout);
    cin>>n;
    for(long long i=1;i<=n;i++){
        a[i]=read();
        dp[i][1]=(dp[i-1][1]+a[i])%mod;
    }
    for(long long i=1;i<=n;i++){
        for(long long j=2;j<=4;j++){
            dp[i][j]=(dp[i-1][j]+dp[i-1][j-1]*a[i])%mod;
        }
    }
    cout<<dp[n][4];
    return 0;
}