Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm>
- #include <unordered_set>
- int main() {
- uint64_t n = 0, x = 0, k = 0;
- uint64_t count = 0;
- std::unordered_set<uint64_t> rings;
- std::cin >> n >> x >> k;
- std::vector<uint64_t> alarms(n, 0);
- for (uint64_t i = 0; i < n; i++) {
- std::cin >> alarms[i];
- }
- std::sort(alarms.begin(), alarms.end());
- uint64_t i = 0, d = 0;
- while (rings.size() != k) {
- rings.insert(alarms[i] + d);
- i++;
- if (i / n == 1 && rings.size() != k) {
- i = 0;
- d += x;
- }
- }
- std::cout << alarms[--i] + d << std::endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement