zoukankan      html  css  js  c++  java
  • ZOJ Problem Set–1383 Binary Numbers

    Time Limit: 2 Seconds      Memory Limit: 65536 KB


    Given a positive integer n, print out the positions of all 1's in its binary representation. The position of the least significant bit is 0.

    Example
    The positions of 1's in the binary representation of 13 are 0, 2, 3.

    Task
    Write a program which for each data set:

    reads a positive integer n,
    computes the positions of 1's in the binary representation of n,
    writes the result.

    Input
    The first line of the input contains exactly one positive integer d equal to the number of data sets, 1 <= d <= 10. The data sets follow.
    Each data set consists of exactly one line containing exactly one integer n, 1 <= n <= 10^6.

    Output
    The output should consists of exactly d lines, one line for each data set.
    Line i, 1 <= i <= d, should contain increasing sequence of integers separated by single spaces - the positions of 1's in the binary representation of the i-th input number.

    Sample Input

    1
    13

    Sample Output

    0 2 3


    Source: Central Europe 2001, Practice

    注意输出格式中的空格的控制!

    #include<iostream>
    
    using namespace std;
    
    int main()
    
    {
    
      int nums;cin>>nums;
    
      int number;
    
      while(nums-- && cin>>number)
    
      {
    
        int j = 0;
    
        for(int i = 0; number; number >>= 1, i++)
    
        {
    
          if(number&1 > 0)
    
          {
    
            if(j != 0)
    
              cout<<" ";
    
            cout<<i;
    
            j++;
    
          }
    
        }
    
        cout<<endl;
    
      }
    
      return 0;
    
    }
  • 相关阅读:
    Java笔记(2)
    java笔记(1) java环境
    黑马javaSE内部编程题10道
    Openblas编译Android NDK库的步骤
    Android layout的横竖屏处理
    会议整理
    概率论总结
    数据分析推荐书籍
    操作系统(蒲晓蓉)7
    运筹学整理笔记1
  • 原文地址:https://www.cnblogs.com/malloc/p/2392596.html
Copyright © 2011-2022 走看看