Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <iostream>
- #include <vector>
- #include <set>
- #include <map>
- #include <math.h>
- #include <algorithm>
- #include <queue>
- #include <string>
- #include <unordered_set>
- #include <deque>
- #include <unordered_map>
- #include <assert.h>
- #include <iomanip>
- #include <stack>
- #include <bitset>
- using namespace std;
- typedef long long ll;
- typedef long double ld;
- typedef unsigned long long ull;
- #define all(x) x.begin(), x.end()
- #define pb push_back
- void io() {
- #ifdef DEBUG
- freopen("a.in", "r", stdin);
- freopen("a.out", "w", stdout);
- #endif
- cin.tie(NULL);
- cout.tie(NULL);
- ios_base::sync_with_stdio(false);
- }
- signed main() {
- io();
- int n, k;
- cin >> n >> k;
- vector<pair<int, int>> v(n);
- for (int i = 0; i < n; i++) {
- cin >> v[i].first;
- v[i].second = i;
- }
- sort(v.begin(), v.end());
- int cnt = 1;
- reverse(all(v));
- vector<pair<int, int>> v1;
- for (int i = 1; i < n; i++) {
- if (v[i].first != v[i - 1].first) {
- cnt++;
- if (cnt > k) {
- for (int j = i; j < n; j++) {
- v1.push_back({ v[j].second, v[j].first });
- }
- break;
- }
- }
- }
- sort(v1.begin(), v1.end());
- cout << v1.size() << endl;
- for (int i = 0; i < v1.size(); i++)
- cout << v1[i].second << ' ';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement