题解 | #乘积#
乘积
https://ac.nowcoder.com/acm/problem/53630
异或规则:只有同时出现1才结果为1,其他的全为0。
即:1&1=1 1&0=0 0&0=0
&
式中&的结果是
所以我们根据二进制的规则进行暴力乘法即可
AC代码
#include <bits/stdc++.h>
using namespace std;
const long long mod = 998244353;
inline void IOS()
{
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
}
void dilingtian()
{
long long n;
cin >> n;
long long ans = 1;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
{
int minn = min(i, j);
long long p = 1, sum = 0;
while (minn--)
{
sum = (sum % mod + p % mod) % mod;
p = p * 2 % mod;
}
ans = ans * sum % mod;
}
cout << ans << endl;
}
int main(void)
{
IOS();
int t;
cin >> t;
while (t--)
dilingtian();
return 0;
}