# ZeroJudge - c489: kevin 的啃得雞 ### 題目連結:https://zerojudge.tw/ShowProblem?problemid=c489 ###### tags: `ZeroJudge` `位元運算` ```cpp= #include <stdio.h> using namespace std; int main() { int bitsSum[32] = {}, numbers[2], counts[2] = {}, amount, buffer, pointer = 0, maximum, answer = 0, i; scanf("%d", &amount); while (amount--) { scanf("%d", &buffer); for (i = 0; i < pointer; ++i) if (numbers[i] == buffer) ++counts[i]; if (pointer < 2) { for (i = 0; i < pointer; ++i) if (numbers[i] == buffer) break; if (i == pointer) numbers[pointer] = buffer, ++counts[pointer], ++pointer; } for (int i = 0; i < 32; ++i) if (buffer & (1 << i)) ++bitsSum[i]; } maximum = (counts[0] >= counts[1] ? counts[0] : counts[1]); for (int i = 0; i < 32; ++i) if (bitsSum[i] % maximum) answer += (1 << i); printf("%d\n", answer); } ```