一个小问题
查看原帖
一个小问题
521283
wangif424楼主2022/10/17 21:49
#include<bits/stdc++.h>
#define int long long
using namespace std;
int t;
int n,vi;
int const mod=998244353;
int qpow(int a,int n,int p){
	int r=1;
	while(n){
		if(n&1)r=r*a%p;
		a=a*a%p;
		n>>=1;
	}
	return r;
}
signed main(){
	cin >> t;
	while(t--){
		int ans=0;
		cin >> n;
		for(int i=1;i<=n;i++){
			cin >> vi;
			ans=(ans|vi)%mod;
		}
		ans=ans*qpow(2,n-1,mod)%mod;
		cout << ans << endl;
	}
	return 0;
}

为什么ans=(ans|vi)不能换成ans=(ans|vi)%mod;

2022/10/17 21:49
加载中...