ZOJ 2417 Lowest Bit

来源:互联网 发布:算法类的书籍推荐 编辑:程序博客网 时间:2024/05/15 11:15

ZOJ  2417  Lowest Bit

         题意:把十进制数字变成二进制,然后找到这个二进制数字从左数的第一个“1”,然后写出这个数位上的“1”所代表的的十进制数字。

        思路:一次A

        代码:

       

#include<stdio.h>#include<math.h>int main(){int i,j,n,a[20],b,k;for(i = 1;;i++){scanf("%d",&n);if(n==0)break;for(j = 0;j<=10;j++)a[j] = 0;j = 0;while(n>0){a[j] = n%2;n = (n-a[j])/2;j++;}b = 1;for(j = 0;j<=10;j++){if(a[j]==1){for(k = 0;k<=j-1;k++)b = b*2;printf("%d\n",b);break;}}}return 0;}


 

原创粉丝点击