題目描述
小康最近沉迷王者榮耀,他最喜歡用猴子了,但是他有強迫症。假設猴子每使用一次技能可以打死一半的小兵,但是如果當前的小兵數爲奇數,那麼他就必須先單獨殺死其中一個,使小兵數爲偶數,再使用技能。那麼現在請問,殺光N個小兵需要單獨殺死其中多少個小兵?
輸入
輸入數據首先給出一個整數C,表示測試組數。
然後是C組數據,每組包含一個正整數n (n<100000)。
輸出
對應每組數據,請輸出一個整數,表示猴子單獨殺死小兵的個數,每組輸出佔一行。
樣例輸入
2 5 10
樣例輸出
2 2
來源
【AC代碼】:
import java.util.Arrays;
import java.util.Scanner;
import java.util.logging.MemoryHandler;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int c = sc.nextInt();
int s[] = new int[c];
int i = 0;
while (c > 0) {
s[i] = sc.nextInt();
c--;
i++;
}
for (int j = 0; j < i; j++) {
int sum = 0;
while (s[j] != 0) {
if (s[j] % 2 == 0)
s[j] /= 2;
else {
sum++;
s[j] = s[j] - 1;
}
}
System.out.println(sum);
}
}
}