結果

問題 No.370 道路の掃除
ユーザー maimai
提出日時 2016-05-14 00:38:57
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 656 bytes
コンパイル時間 1,607 ms
コンパイル使用メモリ 171,276 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2024-10-14 16:53:00
合計ジャッジ時間 2,522 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 34
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<bits/stdc++.h>

using namespace std;

int main(){
    int i,j,k,l;
    int m,n;
    int h,x,y;
    
    cin>>n>>m;
    
    vector<int> v;
    
    l=0;
    for (i=0;i<m;i++){
        cin>>j;
        v.push_back(j);
    }
    sort(v.begin(),v.end());
    
    
    int min=-1;
    for (i=0;i<m-n+1;i++){
        l=v[i];
        h=v[i+n-1];
        if (0<=l){
            k=h;
        }else if(0<h){
            int t,u;
            t=(abs(l)*2+h);
            u=(abs(l)+h*2);
            k=t>u?u:t;
        }else {
            k=abs(l);
        }
        //cout<<k<<endl;
        if (min<0||k<min) min=k;
    }
    cout<<min<<endl;
    return 0;
}
0