题意:Tanya想要最多的玩具,但花费不能超过m,玩具从1到10^9编号,编号为i的玩具价钱为i,
思路:很明显的贪心题,价格越小且Tanya没有的玩具,一定要买下,用set保存已经有的玩具,
题目链接:http://codeforces.com/contest/659/problem/C
#include <bits/stdc++.h>
using namespace std;
#define c_false ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)
int n, k, x;
set<int> s;
vector<int> ans;
int main()
{
c_false;
s.clear();
ans.clear();
cin >> n >> k;
for(int i=0; i<n; i++)
{
cin >> x;
s.insert(x);
}
int i = 1;
while(k > 0)
{
if(s.count(i))
{
i++;
continue;
}
k -= i;
if(k>=0)
{
s.insert(i);
ans.push_back(i);
i++;
}
}
vector<int>::iterator it;
cout << (int)ans.size() <<endl;
for(it=ans.begin(); it!=ans.end(); it++)
cout << *it <<" ";
return 0;
}