why 样例#3 WA
查看原帖
why 样例#3 WA
769006
crzcqh楼主2024/6/22 12:39
#include<bits/stdc++.h>
#define ll long long
#define M 200005
#define mod 1000000007
using namespace std;
ll n,ans;
ll a[M],p[M];
ll qpow(ll x,ll base){
	ll ans=1;
	if(base<1) return 1; 
	while(base){
		if(base&1) ans=ans*x%mod;
		x=x*x%mod;
		base>>=1;
	}
	return ans%mod;
}
int main(){
	cin>>n;
	for(ll i=1;i<=n;i++) cin>>a[i];
	p[0]=1;
	for(ll i=1;i<=n;i++) p[i]=p[i-1]*2%mod;
	for(ll i=1;i<=n;i++){
		ans=(ans+p[i-1]*a[i]%mod*(p[n-i-1]*(n-i)%mod+p[n-i]%mod)%mod)%mod;
	}
	cout<<qpow(2,n)*ans%mod;
	return 0;
}

玄关

2024/6/22 12:39
加载中...