A

#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;

int a[10005];

int main() {
	freopen("game.in", "r", stdin);
	freopen("game.out", "w", stdout);
	int t;
	cin >> t;
	while(t--) {
		int n, m, len = 0;
		cin >> n >> m;
		for(int i = 1; i <= n; i++) {
			string s;
			cin >> s;
			len += s.size();
			int j;
			for(j = 0; s[s.size() - j - 1] == '0'; j++);
			a[i] = j;
		}
		sort(a + 1, a + n + 1);
		for(int i = n; i >= 1; i -= 2) len -= a[i];
		if(len <= m) cout << "xyz" << endl;
		else cout << "wyf" << endl;
	}
	return 0;
}

D

#include <iostream>
#include <cstdio>
#define ll long long
using namespace std;

const ll mod = 998244353;
ll p[1000005], cnt[40];

int main() {
	freopen("xor.in", "r", stdin);
	freopen("xor.out", "w", stdout);
	ll n;
	cin >> n;
	for(ll i = 1; i <= n; i++) {
		cin >> p[i];
		for(ll j = 0; j <= 30; j++) {
			if(p[i] & (1LL << j)) cnt[j]++;
		}
	}
	ll sum = 0;
	for(ll i = 1; i <= 30; i++) {
		sum = (sum + cnt[i] * (n - cnt[i]) % mod * (1 << i) % mod) % mod;
	}
	cout << sum << endl;
	return 0;
}