1.给定一个有序数组,统计其中不重复的绝对值的个数。(这个数组可能很长)
例如 int[] A = new int[]{-5, -3, -1, 0, 3, 6}; 不重复的绝对值有 5,3,-1,0, 6。 所以结果为5。
2.有三个int, a, b, k . 其中 0<=a<=b, k>0. 统计a ,b 之间能被k整除的数的个数(含 a,b )。
例如a =6 , b = 11, k =2, 结果应该为3, 因为 6,8, 10 三个数能被2整除。
1.两个指针,一个往正数方向走,一个往负数方向走,走的速度是比较两边的绝对值谁小谁就走,绝对值相等,计数器不加,反正累加。
2.
int count=0;
while(result >=b )
{
result = a + (count++ * k);
}
例如 int[] A = new int[]{-5, -3, -1, 0, 3, 6}; 不重复的绝对值有 5,3,-1,0, 6。 所以结果为5。
2.有三个int, a, b, k . 其中 0<=a<=b, k>0. 统计a ,b 之间能被k整除的数的个数(含 a,b )。
例如a =6 , b = 11, k =2, 结果应该为3, 因为 6,8, 10 三个数能被2整除。
1.两个指针,一个往正数方向走,一个往负数方向走,走的速度是比较两边的绝对值谁小谁就走,绝对值相等,计数器不加,反正累加。
2.
int count=0;
while(result >=b )
{
result = a + (count++ * k);
}