Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int main() {
- int n;
- cin >> n;
- std::vector<int> a(n, 0);
- std::vector<int> b(n, 0);
- for (int i = 0; i < n; ++i){
- scanf("%d", &a[i]);
- }
- for (int i = 0; i < n; ++i){
- scanf("%d", &b[i]);
- }
- map<int, int> count_b;
- for (auto item: b) {
- if (count_b.find(item) != count_b.end()) {
- count_b[item] += 1;
- } else {
- count_b[item] = 1;
- }
- }
- std::vector<int> ans(n, 0);
- int item, cand;
- for (int i = 0; i < n; ++i) {
- item = a[i];
- for (int j = n-item; j < 2*n - item; ++j) {
- cand = j % n;
- if (count_b.find(cand) != count_b.end() && count_b[cand] > 0) {
- ans[i] = (cand + item) % n;
- count_b[cand] -= 1;
- break;
- }
- }
- }
- for (int i =0; i< n; ++i) {
- printf("%d ", ans[i]);
- }
- printf("\n");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement