zoukankan      html  css  js  c++  java
  • 蓝桥杯模拟赛4 DIJ题代码待补

    -------------------------------------------------------------------------------------

    sth to add

    -------------------------------------------------------------------------------------

     

    H.

    C/C++中__builtin_popcount()用于计算一个 32 位无符号整数有多少个位为1
    GCC有一个叫做__builtin_popcount的内建函数,它可以精确的计算1的个数。尽管如此,不同于__builtin_ctz,它并没有被 翻译成一个硬件指令(至少在x86上不是)。相反的,它使用一张类似上面提到的基于表的方法来进行位搜索。这无疑很高效并且非常方便。

    #include<stdio.h>
    int n,t,m,k,v[105];
    int main(){
        scanf("%d%d%d",&n,&m,&k);
        for(int i=0;i<n;i++){
            bool flag=1;
            for(int j=1;j<=t;j++){
                int cnt=__builtin_popcount(i^v[j]);
                if(cnt<k){flag=0;break;}
            }
            if(flag) v[++t]=i;
            if(t==m) break;
        }
        for(int i=1;i<=m;i++) printf("%d ",v[i]);
        return 0;
    }
  • 相关阅读:
    5月16日 AJAX
    5月13日 Jquery基础
    5月13日 PDO封装
    会话控制练习
    文件上传
    会话控制
    注册审核
    练习
    三级联动
    AJAX之XML
  • 原文地址:https://www.cnblogs.com/shenben/p/12700021.html
Copyright © 2011-2022 走看看