質問バイナリカウントアルゴリズムのトレーニング
リソース制限の
制限時間:1.0秒メモリ制限:256.0メガバイトの
問題の説明
所与L、R. セクション内のすべての数値の統計[L、R]はバイナリ「1」と番号に含まれます。
5は、2つの「1」、101のようなバイナリ含みます
入力フォーマットは、
最初の行は、2つのL、Rの数含まれている
の出力形式
、数Sを二進数「1」にセクションに含まれる全ての番号の[L、R]を表します。
入力サンプル
23
サンプル出力
3
データサイズと表記
L <= R <= 100000。
import java.util.Scanner;
public class 二进制数数 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int l=sc.nextInt();
int r=sc.nextInt();
int count = 0,a,b;
for (int i=l;i<=r;i++){
a=i;
while (a!=0){
b=a%2;
if (b==1) count++;
a/=2;
}
}
System.out.println(count);
}
}