結果

問題 No.5001 排他的論理和でランニング
ユーザー tecchaxntecchaxn
提出日時 2018-03-16 22:48:52
言語 C++11
(gcc 13.3.0)
結果
WA  
実行時間 -
コード長 785 bytes
コンパイル時間 1,057 ms
実行使用メモリ 7,428 KB
スコア 31,530,895
最終ジャッジ日時 2020-03-12 19:27:43
ジャッジサーバーID
(参考情報)
judge8 /
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 40 WA * 10
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<bits/stdc++.h>
#define REP(i,n) for(int i=0;i<(n);i++)
#define ALL(v) (v).begin(),(v).end()
#define int long long
using namespace std;

//-----------------------------------------------------------------------

signed main()
{
    int N,M; cin>>N>>M;
    vector<int> a(N);
    vector<int> v[30];
    REP(i,N){
        cin>>a[i];
        int x=a[i],cnt=0;
        while(x>0){
            x/=2;
            cnt++;
        }
        v[cnt].push_back(a[i]);
    }
    
    vector<int> ans;
    for(int i=29;i>=0;i--){
        if(v[i].size()>0){
            ans.push_back(v[i][0]);
            break;
        }
    }
    sort(ALL(a));
    REP(i,M-1){
        ans.push_back(a[i]);
    }
    
    REP(i,M){
        if(i) cout<<' ';
        cout<<ans[i];
    }
    cout<<endl;
    
}
0