26.方程
描述:

思想:
这里可以把该方程理解为,与a做或运算可以表示为将a中的某一位变为0或者不变,为了保持等式两边平衡,只能在a在二进制下为0的进制位进行操作,于此同时加上的也是对应的一个数。即统计a中为0的个数,然后做排列组合。
代码:
#include <bits/stdc++.h>
using namespace std;
#define MOD 998244353
int main() {
int n;
cin >> n;
string str;
cin >> str;
int count = 0;
for(int i = 0;i < n;i++){
if(str[i] == '0'){
count++;
}
}
long long res = 1;
for(int i = 0;i<count;i++){
res *= 2;
res %= MOD;
}
cout << res << endl;
}

浙公网安备 33010602011771号