Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <set>
- #include <vector>
- #include <algorithm>
- #include <queue>
- const unsigned int INF = 2147483648;
- int v[1000001];
- int main() {
- std::cin.tie(NULL);
- std::ios_base::sync_with_stdio(false);
- std::priority_queue<int> t;
- unsigned int xm1, x0, a, b, c, n, k;
- std::cin >> n >> k;
- std::cin >> xm1 >> x0 >> a >> b >> c;
- unsigned int nw;
- int cur = 0;
- for (int i = 0; i < n; i++) {
- nw = (a * xm1 + b * x0 + c) % INF;
- if (cur < 1e6) {
- v[cur] = static_cast<int>(nw);
- cur++;
- } else {
- std::nth_element(v, v + k - 1, v + 1000001);
- cur = k;
- }
- xm1 = x0;
- x0 = nw;
- }
- std::sort(v, v + 1000001);
- std::reverse(v, v + 1000001);
- for (int i = 0; i < k; i++) {
- std::cout << v[i] << " ";
- }
- std::cout << "\n";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement