2 条题解

  • 0
    @ 2023-9-17 23:44:33
    #include <stdio.h>
    // 函数用于计算一个整数中1的个数
    int fun(int num) 
    {
        int count = 0;
        while (num) 
    	{
            count += num & 1; // 检查最低位是否为1
            num >>= 1;       // 二进制结果右移一位,继续检查下一位
        }
        return count;
    }
    
    int main() 
    {
    	int n;
    	scanf("%d",&n);
        int num[n];
        for(int i=0;i<n;i++) 
    	{
            scanf("%d", &num[i]);
     printf("%d\n",fun(num[i])}
        return 0;
    }
    

    函数算法详细点此处

    • 0
      @ 2023-9-4 22:21:42

      #include<stdio.h> int main() { int n=0,N,M; scanf("%d",&N); if(N<=1&&N>=1000){return 0;} while(N--) { scanf("%d",&M); if(M<0&&M>10000){return 0;} int count=0; while(M) { M=((M-1)&M); count++; } printf("%d\n",count); } return 0; }

      • 1

      信息

      ID
      163
      时间
      3000ms
      内存
      128MiB
      难度
      4
      标签
      (无)
      递交数
      490
      已通过
      235
      上传者