比赛 2025.10.18 评测结果 AAAAAAAAAA
题目名称 01数列 最终得分 100
用户昵称 梦那边的美好CE 运行时间 0.028 s
代码语言 C++ 内存使用 3.68 MiB
提交时间 2025-10-18 09:33:13
显示代码纯文本
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int mod=1e9+7;
int n,b,cnt0=0,cnt1=0,ans=0;
int ksm(int a,int b,int p){//a^b mod p
	if(b==0)return 1;
	int ans=1;
	while(b){
		if(b&1)ans=ans*a%p;
		a=a*a%p;
		b>>=1;	
	}
	return ans;
}
signed main(){
	freopen("01.in","r",stdin);freopen("01.out","w",stdout);
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>b;
		if(b==1)cnt1++;
		else cnt0++;
	}
	ans=ksm(2,cnt1,mod)+ksm(2,cnt0,mod);
	cout<<(ksm(ans,n,mod))%mod;
	return 0;
}