void Finddog(int a[], int num, int*x, int*y)
{
int result = a[0];
for (int i = 1; i < num; i++){
result ^= a[i];
}
int pos = 1;
while (1)
{
if (result &pos){
break;
}
pos <<= 1;
}
*x = 0;
*y = 0;
for (int i = 0; i < num; i++){
if (a[i] & pos){
*x ^= a[i];
}
else{
*y ^= a[i];
}
}
}
int main()
{
int a[] = { 1, 2, 3, 4, 5, 6, 10, 15, 1, 2, 3, 4, 5, 6 };
int x = 0;
int y = 0;
int num = sizeof(a) / sizeof(a[0]);
Finddog(a, num, &x, &y);
printf("x:%d y:%d\n", x, y);
system("pause");
return 0;
}
找单身狗
最新推荐文章于 2023-03-13 21:03:46 发布