結果

問題 No.1046 Fruits Rush
ユーザー reopis
提出日時 2020-07-14 22:09:32
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 977 bytes
コンパイル時間 1,679 ms
コンパイル使用メモリ 172,808 KB
実行使用メモリ 6,820 KB
最終ジャッジ日時 2024-11-18 22:29:49
合計ジャッジ時間 2,379 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 14
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
#define ll long long
using namespace std;
#define rep(i, n) for (int i = 0; i < n; i++)
#define rrep(i, n) for (int i = 1; i <= n; i++)
ll gcd(ll a, ll b) { return b ? gcd(b, a%b) : a; }
ll lcm(ll a, ll b) { return (a * b) / gcd(a,b); }
using P = pair <int, int>;
template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; }
template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; }
 
ll MOD = 1000000007;
ll INF =1<<30;
ll dp[110][100100];
 

int main(){
   int n , k ;
   cin >>  n >>k;
   vector<int>a;
   int x=-101;
   rep(i,n){
       int b;
       cin >> b;
       if(b>=0) a.push_back(b);
       if(b>x&&b<0) x = b;
   }
   sort(a.begin(),a.end(),greater<int>());
   if(a.size()==0){ cout << x <<endl; return 0;}
   int ans = 0;
   if(k>=a.size()){
       rep(i,a.size()) ans+=a[i];
       cout << ans <<endl;
   }
   else{
       rep(i,k) ans+=a[i];
       cout <<ans <<endl;
   }
   
}
0