一道笔试题。一个数组 a[99] ,里面有1-100中的99个不重复的整数,让你用最多一次循环找出没有的那个.
求解
[解决办法]
先算出所有已知的100个数的总和A,再把数组中所有的数相加得到一个总和B,A-B的结果就是那个没有的。
[解决办法]
很简单啊。
- Java code
int[] ary = new int[100]; int sum1 = 0; int sum2 = 0; for (int i = 0; i < ary.length; i++) { sum1 += i + 1; sum2 += ary[i]; } int rs = sum1 - sum2;
[解决办法]
- Java code
int[] ary = new int[99]; //给ary的每一个元素赋值...... int x = 5050; //写成int sum=(100+1)*100/2;也行. for (int i = 0; i < ary.length; i++) { x-=ary[i]; } System.out.println("那个数是:"+x);