int a[N];
int main()
{
int m;
while (cin >> m && m)
{
int ans = 0;
f(i, 1, m) { scanf("%d", &a[i]);ans ^= a[i]; }
if (ans == 0) { puts("No");continue; }
puts("Yes");
unordered_set<int> st;
f(i, 1, m)
{
int k = ans ^ a[i];
int re = a[i] - k;
if (re >= 0 && !st.count(a[i])) { st.insert(a[i]);printf("%d %d\n", a[i], k); }
}
}
return 0;
}
取(m堆)石子游戏 HDU - 2176
最新推荐文章于 2021-10-06 16:40:22 发布