669D - Little Artem and Dance - CodeForces Solution


data structures implementation math *1800

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>

using namespace std;

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    int n, q; cin >> n >> q;
    int pos1 = 0, pos2 = 1;
    while (q--) {
        int type; cin >> type;
        if (type == 1) {
            int x; cin >> x;
            pos1 = (pos1 + (x + n) % n) % n;
            pos2 = (pos2 + (x + n) % n) % n;
        }
        else {
            pos1 ^= 1;
            pos2 ^= 1;
        }
    }
    vector<int> ans(n);
    ans[pos1] = 1;
    ans[pos2] = 2;
    int noww = 3;
    for (int i = (pos1 + 2) % n; i != pos1; i = (i + 2) % n) {
        ans[i] = noww;
        noww += 2;
    }
    noww = 4;
    for (int i = (pos2 + 2) % n; i != pos2; i = (i + 2) % n) {
        ans[i] = noww;
        noww += 2;
    }
    for (auto& u : ans) cout << u << ' ';
    cout << '\n';

    return 0;
}/*1691156894.4127584*/


Comments

Submit
0 Comments
More Questions

219A - k-String
952A - Quirky Quantifiers
451B - Sort the Array
1505H - L BREAK into program
171E - MYSTERIOUS LANGUAGE
630D - Hexagons
1690D - Black and White Stripe
1688D - The Enchanted Forest
1674C - Infinite Replacement
712A - Memory and Crow
1676C - Most Similar Words
1681A - Game with Cards
151C - Win or Freeze
1585A - Life of a Flower
1662A - Organizing SWERC
466C - Number of Ways
1146A - Love "A"
1618D - Array and Operations
1255A - Changing Volume
1710C - XOR Triangle
415C - Mashmokh and Numbers
8A - Train and Peter
591A - Wizards' Duel
1703G - Good Key Bad Key
1705A - Mark the Photographer
1707A - Doremy's IQ
1706B - Making Towers
1325B - CopyCopyCopyCopyCopy
1649C - Weird Sum
1324B - Yet Another Palindrome Problem