1 条题解

  • 0
    @ 2025-4-20 22:18:35

    C++代码

    #include <iostream>
    #include <vector>
    using namespace std;
    
    int main() {
        int n, m;
        cin >> n >> m;
        
        vector<int> dir(n);
        vector<string> job(n);
        
        for (int i = 0; i < n; ++i) {
            cin >> dir[i] >> job[i];
        }
        
        int current_pos = 0;
        
        for (int i = 0; i < m; ++i) {
            int ai, si;
            cin >> ai >> si;
            
            int d = dir[current_pos];
            int delta;
            
            if (ai == 0) { // 左数
                if (d == 0) {
                    delta = -si;
                } else {
                    delta = si;
                }
            } else { // 右数
                if (d == 0) {
                    delta = si;
                } else {
                    delta = -si;
                }
            }
            
            current_pos = (current_pos + delta) % n;
            if (current_pos < 0) {
                current_pos += n;
            }
        }
        
        cout << job[current_pos] << endl;
        
        return 0;
    }
    
    • 1

    信息

    ID
    2762
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    1
    已通过
    1
    上传者