1 条题解

  • 0
    @ 2022-10-13 9:49:07

    注意这题是给出操作后的,还原操作前的,所以要反向操作。

    超过 9 变 0 和小于 0 变 9 这样的操作,可以利用取模运算,或者直接用 if 语句判断实现。

    #include <bits/stdc++.h>
    using namespace std;
    int t, n;
    int a[105];
    int main()
    {
        cin >> t;
        while (t--)
        {
            cin >> n;
            for (int i = 1; i <= n; i++)
                cin >> a[i];
            for (int i = 1; i <= n; i++)
            {
                int bi;
                cin >> bi;
                for (int j = 1; j <= bi; j++)
                {
                    char now;
                    cin >> now;
                    if (now == 'U')
                        a[i] = (a[i] - 1 + 10) % 10;
                    else if (now == 'D')
                        a[i] = (a[i] + 1) % 10;
                }
            }
            for (int i = 1; i <= n; i++)
                cout << a[i] << " ";
            cout << "\n";
        }
        return 0;
    }
    
    • 1

    信息

    ID
    1098
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    12
    已通过
    9
    上传者