Submission #1442321


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, N) for (int i = 0; i < (int)N; i++)

int main () {
  int n, k;
  cin >> n >> k;
  vector<int> a(n);
  ll sum = 0;
  rep(i,n) {
    cin >> a[i];
    sum += a[i];
  }
  sort(a.begin(), a.end());

  if(sum < k) {
    cout << n << endl;
    return 0;
  }

  vector<int> can(k,0);
  can[0] = 1;

  for(int i = n - 2; i >= 0; i--) {
    for(int l = k - 1; l >= 0; l--) {
      if(can[l] && l + a[i+1] < k) can[l+a[i+1]] = 1;
    }

    if((i != 0 && a[i] == a[i-1]) || k - a[i] <= 0) continue;
    bool nec = false;
    for(int j = k - a[i]; j < k; j++) {
      if(can[j]) nec = true;
    }
    if(!nec) {
      cout << i + 1 << endl;
      return 0;
    }
  }
  out << 0 << endl;

  return 0;
}

Submission Info

Submission Time
Task D - No Need
User en30
Language C++14 (GCC 5.4.1)
Score 0
Code Size 816 Byte
Status CE

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:40:3: error: ‘out’ was not declared in this scope
   out << 0 << endl;
   ^