记录编号 607586 评测结果 AAAAAAAAAA
题目名称 3720.01数列 最终得分 100
用户昵称 Gravatar梧叶已同秋雨去 是否通过 通过
代码语言 C++ 运行时间 0.027 s
提交时间 2025-10-18 12:12:24 内存使用 3.67 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
long long n,b[1005],c[1005][1005],ans=1,s1,s0,sum;
long long p=1e9+7;
long long fen(int a,int x){
    if(x==0)return 1;
    if(x==1)return a;
    long long k;
    k=fen(a,x/2);
    k%=p;
    k*=k;
    k%=p;
    if(x%2==1)return (k*a)%p;
    return k%p;
}
int main(){
	freopen("01.in","r",stdin);
	freopen("01.out","w",stdout);
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>b[i];
		if(b[i]){
			s1++;
		}else{
			s0++;
		}
	}	
	if(n-(2*s0)<0){
		long long k=fen(2,-(n-(2*s0)));
		ans=(fen(2,n*s0)%p)*fen(1+fen(k,p-2),n);
	}else{
		ans=(fen(2,n*s0)%p)*fen(1+fen(2,n-(2*s0)),n);
	}
	ans%=p;
	cout<<ans;
	return 0;
}