BZOJ 2460:[BeiJing2011線形素子群貪欲+

キリを逃げるために線形試みが続いマナ・降順に応じてすべての要素は、挿入されました。 

#include <cstdioを> 
する#include <アルゴリズム> 
の#define N 2000   
の#define M 62     
の#defineは長い長いっ
の#define setIO(S)freopenは(S ".IN"、 "R"、STDIN)
名前空間stdを使用。  
int型のn; 
LLのD [N]。   
構造体のノード
{ 
    LLヴァル、マジック; 
    ノード(LLヴァル= 0、0 =マジックLL):ヴァル(val)で、魔法(マジック){}    
} E [N]。   
ブールCMP(ノード、ノードB)
{ 
    戻りa.magic> b.magic。
} 
int型のmain()
{ 
    LL再= 0。
    int型I、J。
    // setIO( "入力");  
    scanf関数( "%のD"、&N); 
    ([I] .magic "%のLLDの%のLLD"、&E [I] .val、&E)のscanf(I ++; iが<= N I = 1)のために、   
    ソート(E + 1、E + 1 + N、CMP)。     
    (I = 1; iが<= N。
        LL、X = E [I] .val、Y = E [I] .magic。        
        - (J; J> = 0 J = M)のための
        { 
            IF(X&(1LL << J))
            { 
                IF(D [j])、X ^ = D [J]。
                { 
                    D [j] = xと; 
                    + = Y再。         
                    ブレーク; 
                } 
            } 
        } 
    } 
    のprintf( "%LLDする\ n"、RE)。   
    0を返します。
}

  

おすすめ

転載: www.cnblogs.com/guangheli/p/11533882.html