zoukankan      html  css  js  c++  java
  • 【bitset】Kth Minimum Clique

     1 #include<bits/stdc++.h>
     2 #define B bitset<105>
     3 using namespace std;
     4 typedef long long ll ;
     5 const int N = 105 ;
     6 B G[N] ;
     7 ll a[N] ;
     8 typedef struct Node {
     9     B mask;
    10     ll val;
    11     Node() {}
    12     Node( B b,ll v):mask(b),val(v){}
    13     bool operator < (const Node & rhs )const {
    14         return val > rhs.val ;
    15     }
    16 }Node ;
    17 int main()
    18 {
    19     int n,k;
    20     while(~scanf("%d%d",&n,&k)){
    21         for(int i=1;i<=n;i++){
    22             scanf("%lld",&a[i]);
    23         }
    24         for(int i=1;i<=n;i++){
    25             G[i].reset();
    26             for(int j=1,x;j<=n;j++){
    27                 scanf("%1d",&x);
    28                 G[i][j] = x ;
    29             }
    30         }
    31         priority_queue < Node > Q ;
    32         B tmp ;
    33         tmp.reset();
    34         Q.push( Node(tmp,0) );
    35         while( !Q.empty() ){
    36             Node cur = Q.top() ;
    37             Q.pop();
    38             if( !(--k) ){
    39                 return 0*printf("%lld
    ",cur.val );
    40             }
    41             int pos = 1 ;
    42             for(int i=1;i<=n;i++){
    43                 if(cur.mask[i]){
    44                     pos = i+1 ;
    45                 }
    46             }
    47             for(int i=pos;i<=n;i++){
    48                 if( ( G[i] & cur.mask ) == cur.mask ){
    49                     cur.mask[i] = 1 ;
    50                     Q.push( Node(cur.mask,cur.val +a[i]) );
    51                     cur.mask[i] = 0 ;
    52                 }
    53             }
    54         }
    55         puts("-1");
    56     }
    57     return 0;
    58 }
    View Code
  • 相关阅读:
    取石子(五)(FIB博弈)
    NYOJ-161-取石子 (四)(Wythoff 博弈)
    memcached简介
    RSA---应用最广泛的非对称加密算法
    分区
    按子组收集数据
    多级分组
    归约和汇总
    收集器Collectors
    由函数生成流---创建无限流:Stream.iterate和Stream.generate
  • 原文地址:https://www.cnblogs.com/Osea/p/11228519.html
Copyright © 2011-2022 走看看