找出重复的号码

Man*_*anu 4 c

在数组[10]中,数组中有1到9的数字,其中一个数字重复(重复数也在1到9之间)如何在不使用循环的情况下找到重复的数字,并且数组可以被横向移动只有一次从上到下.

这不是作业,这是在采访中被问到的

Ala*_*irG 8

最短的答案必须基于弗拉基米尔的答案.没有for循环,但它也不能扩展到可变大小的数组.它是:

int repeated_number = array[9]+array[8]+array[7]+array[6]+array[5]
                     +array[4]+array[3]+array[2]+array[1]+array[0]-45;
Run Code Online (Sandbox Code Playgroud)

甜蜜而简单,回答了这个问题.我认为,问题在于所有回答这个问题的人都习惯于编写能够处理变量情况的合理代码,但这是一个简单的简单问题,所以应该得到一个简单的简单答案.


Vla*_*mir 7

int sum = 0;
for (int i = 9; i >= 0; --i)
    sum+=array[i];
int repeatedNumber = sum - 45; // 45 = 1+...+9
Run Code Online (Sandbox Code Playgroud)

这个解决方案确实使用循环,但你的条件是有争议的 - 遍历数组意味着使用了循环