// No.5 数字のブロック // https://yukicoder.me/problems/no/5 // #include #include #include using namespace std; int solve(int L, vector &blocks); int main() { int L, N; cin >> L >> N; vector blocks(static_cast(N)); for (auto i = 0; i < N; i++) { cin >> blocks[i]; } int ans = solve(L, blocks); cout << ans << endl; } int solve(int L, vector &blocks) { sort(blocks.begin(), blocks.end()); int ans = 0; for (auto b: blocks) { L -= b; if (L >= 0) ans++; else break; } return ans; }