QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#729759#5140. Frozen Scoreboardyixuanoct#AC ✓30ms3948kbC++202.4kb2024-11-09 17:46:162024-11-09 17:46:16

Judging History

你现在查看的是最新测评结果

  • [2024-11-09 17:46:16]
  • 评测
  • 测评结果:AC
  • 用时:30ms
  • 内存:3948kb
  • [2024-11-09 17:46:16]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;

#define int long long

using pii = pair<int, int>;
int n, m;
void solve() {
    int a, b;
    cin >> a >> b;
    vector<pair<int, pii>> s(m + 1);
    vector<int> p;
    for (int i = 1, x, y;i <= m;i++) {
        char t;
        cin >> t;
        if (t == '+') {
            scanf("%lld/%lld", &x, &y);
            a--;
            b -= (x - 1) * 20 + y;
            s[i] = { 1,{x,y} };
        }
        if (t == '-') {
            cin >> x;
            s[i] = { 2,{x,0} };
        }
        if (t == '?') {
            cin >> x >> y;
            s[i] = { 3,{ x,y } };
            p.push_back(i);
        }
        if (t == '.') s[i] = { 4,{0,0} };
    }
    vector<int> q;
    vector<int> ans;
    bool flag = 0;
    auto dg = [&](int x, int cnt, auto&& dg)->void {
        if (flag) return;
        if (cnt >= a) {
            int bb = b;
            int res = 0;
            for (auto i : q) {
                auto [_, tmp] = s[i];
                auto [x, y] = tmp;
                bb -= (y - x) * 20;
                res += x - 1;
            }
            if (240 * a > bb || 299 * a + res * 20 < bb) return;
            bb -= 240 * a;
            int num = min(bb / 20, res);
            bb -= num * 20;
            for (auto i : q) {
                auto [_, tmp] = s[i];
                auto [x, y] = tmp;
                int ta = y - x;
                if (x - 1 <= num) num -= x - 1;
                else x = num + 1, num = 0;
                if (240 + bb <= 299) y = 240 + bb, bb = 0;
                else y = 299, bb -= 59;
                s[i] = { 1,{x + ta,y} };
            }
            flag = 1;
        }
        if (x >= p.size()) return;
        q.push_back(p[x]);
        dg(x + 1, cnt + 1, dg);
        q.pop_back();
        dg(x + 1, cnt, dg);
        };
    dg(0, 0, dg);
    if (!flag) {
        cout << "No\n";
        return;
    }
    cout << "Yes\n";
    for (int i = 1;i <= m;i++) {
        auto [_, tmp] = s[i];
        auto [x, y] = tmp;
        if (_ == 1) cout << "+ " << x << '/' << y << '\n';
        if (_ == 2) cout << "- " << x << '\n';
        if (_ == 3) cout << "- " << y << '\n';
        if (_ == 4) cout << ".\n";
    }
}

signed main() {
    // ios::sync_with_stdio(false), cin.tie(0);
    cin >> n >> m;
    while (n--) solve();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3676kb

input:

1 13
7 951
+ 1/6
? 3 4
+ 4/183
- 2
+ 3/217
.
.
.
+ 2/29
+ 1/91
.
+ 1/22
.

output:

Yes
+ 1/6
+ 3/243
+ 4/183
- 2
+ 3/217
.
.
.
+ 2/29
+ 1/91
.
+ 1/22
.

result:

ok ok (1 test case)

Test #2:

score: 0
Accepted
time: 0ms
memory: 3884kb

input:

6 2
1 100
.
? 3 4
2 100
+ 1/1
+ 1/2
0 0
- 5
- 6
2 480
? 100 100
? 100 100
2 480
? 99 100
? 100 100
1 2000
? 100 100
? 100 100

output:

No
No
Yes
- 5
- 6
Yes
+ 1/240
+ 1/240
No
Yes
+ 89/240
- 100

result:

ok ok (6 test cases)

Test #3:

score: 0
Accepted
time: 0ms
memory: 3676kb

input:

1000 13
6 1519
+ 3/183
- 1
+ 9/133
? 2 3
- 5
? 1 3
- 5
? 1 1
? 1 3
- 5
+ 1/165
- 6
? 2 5
2 570
- 2
- 9
.
- 1
- 7
- 6
+ 4/179
- 2
? 2 5
.
- 2
? 1 3
.
1 140
.
- 2
.
- 2
- 1
- 2
- 2
.
.
.
.
+ 3/100
.
1 195
+ 1/195
.
.
.
.
.
.
.
.
? 1 1
.
.
.
0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
3 776
? 8 22
? 1 8
- 6
+ 1/173
...

output:

Yes
+ 3/183
- 1
+ 9/133
+ 3/278
- 5
+ 3/240
- 5
+ 1/240
- 3
- 5
+ 1/165
- 6
- 5
Yes
- 2
- 9
.
- 1
- 7
- 6
+ 4/179
- 2
+ 5/251
.
- 2
- 3
.
Yes
.
- 2
.
- 2
- 1
- 2
- 2
.
.
.
.
+ 3/100
.
Yes
+ 1/195
.
.
.
.
.
.
.
.
- 1
.
.
.
Yes
.
.
.
.
.
.
.
.
.
.
.
.
.
Yes
- 22
- 8
- 6
+ 1/173
- 11
- 9
- 3
- 6
+ 6/25...

result:

ok ok (1000 test cases)

Test #4:

score: 0
Accepted
time: 2ms
memory: 3732kb

input:

1000 13
0 0
.
.
.
- 1
.
- 5
.
- 2
- 2
- 1
- 9
- 2
.
0 0
- 7
- 1
? 2 2
- 2
- 4
.
- 1
- 3
- 6
- 1
? 4 6
.
- 1
2 480
+ 4/120
- 3
- 5
.
- 11
- 1
- 4
- 4
- 3
? 13 22
.
+ 9/140
? 1 5
3 465
.
.
.
+ 1/124
.
+ 1/139
.
.
+ 1/202
.
.
.
.
3 885
- 1
- 4
- 4
+ 4/158
.
+ 9/138
? 1 8
.
? 1 3
.
- 4
? 2 5
.
6 970
- 4...

output:

Yes
.
.
.
- 1
.
- 5
.
- 2
- 2
- 1
- 9
- 2
.
Yes
- 7
- 1
- 2
- 2
- 4
.
- 1
- 3
- 6
- 1
- 6
.
- 1
Yes
+ 4/120
- 3
- 5
.
- 11
- 1
- 4
- 4
- 3
- 22
.
+ 9/140
- 5
Yes
.
.
.
+ 1/124
.
+ 1/139
.
.
+ 1/202
.
.
.
.
Yes
- 1
- 4
- 4
+ 4/158
.
+ 9/138
- 8
.
- 3
.
- 4
+ 5/289
.
No
Yes
- 2
+ 1/205
- 1
+ 1/106
- 1...

result:

ok ok (1000 test cases)

Test #5:

score: 0
Accepted
time: 5ms
memory: 3696kb

input:

1000 13
5 1620
- 2
- 1
? 2 4
? 4 5
+ 6/213
.
+ 6/231
? 2 4
+ 7/215
.
.
? 2 6
? 1 1
2 975
? 1 4
- 2
- 6
.
? 2 12
? 1 4
? 2 7
- 3
- 1
? 2 19
? 2 2
- 2
? 1 1
0 0
.
.
- 3
- 1
.
- 1
- 4
.
- 1
.
- 1
- 1
- 3
4 1342
.
- 6
- 2
- 4
- 8
- 6
+ 14/95
? 2 2
? 1 9
? 6 10
- 7
+ 4/205
? 3 5
5 1019
.
.
.
+ 2/116
.
- ...

output:

Yes
- 2
- 1
+ 4/261
+ 5/240
+ 6/213
.
+ 6/231
- 4
+ 7/215
.
.
- 6
- 1
Yes
+ 4/299
- 2
- 6
.
- 12
- 4
- 7
- 3
- 1
+ 19/256
- 2
- 2
- 1
Yes
.
.
- 3
- 1
.
- 1
- 4
.
- 1
.
- 1
- 1
- 3
Yes
.
- 6
- 2
- 4
- 8
- 6
+ 14/95
+ 2/299
+ 9/243
- 10
- 7
+ 4/205
- 5
Yes
.
.
.
+ 2/116
.
- 1
+ 3/127
.
.
+ 1/275
+ 4/1...

result:

ok ok (1000 test cases)

Test #6:

score: 0
Accepted
time: 5ms
memory: 3948kb

input:

1000 13
0 0
.
.
.
.
- 1
.
? 1 4
.
.
- 1
.
.
- 1
5 1008
- 2
- 2
.
+ 4/157
.
.
+ 2/145
- 3
+ 2/125
.
+ 1/233
+ 4/188
- 5
0 0
.
.
? 1 1
.
.
.
.
.
.
.
.
.
.
6 1359
+ 1/100
+ 2/144
- 4
+ 2/238
- 2
- 2
+ 4/107
+ 4/214
.
? 3 6
+ 9/236
- 4
- 6
8 3064
+ 20/155
.
- 17
- 11
? 9 10
? 11 30
- 1
? 6 13
+ 6/113
+ ...

output:

Yes
.
.
.
.
- 1
.
- 4
.
.
- 1
.
.
- 1
Yes
- 2
- 2
.
+ 4/157
.
.
+ 2/145
- 3
+ 2/125
.
+ 1/233
+ 4/188
- 5
Yes
.
.
- 1
.
.
.
.
.
.
.
.
.
.
Yes
+ 1/100
+ 2/144
- 4
+ 2/238
- 2
- 2
+ 4/107
+ 4/214
.
- 6
+ 9/236
- 4
- 6
Yes
+ 20/155
.
- 17
- 11
+ 5/242
+ 20/240
- 1
- 13
+ 6/113
+ 2/221
+ 4/240
+ 12/151
...

result:

ok ok (1000 test cases)

Test #7:

score: 0
Accepted
time: 5ms
memory: 3724kb

input:

1000 13
2 501
? 1 8
- 1
+ 4/208
- 5
- 1
- 19
+ 4/173
- 11
.
- 11
? 1 1
.
- 10
4 599
- 2
.
- 12
.
+ 1/142
+ 3/85
- 3
? 4 8
+ 4/80
.
- 1
.
+ 3/152
13 3774
? 2 7
? 2 3
+ 12/162
+ 2/112
+ 4/174
+ 12/156
+ 2/163
+ 2/168
+ 12/186
+ 6/191
+ 8/43
? 1 2
? 1 16
8 2408
? 2 5
? 1 1
? 6 14
+ 4/204
.
+ 2/97
+ 2/2...

output:

Yes
- 8
- 1
+ 4/208
- 5
- 1
- 19
+ 4/173
- 11
.
- 11
- 1
.
- 10
Yes
- 2
.
- 12
.
+ 1/142
+ 3/85
- 3
- 8
+ 4/80
.
- 1
.
+ 3/152
No
Yes
+ 5/299
+ 1/243
+ 14/240
+ 4/204
.
+ 2/97
+ 2/222
+ 10/230
.
- 7
.
- 1
+ 2/233
Yes
.
- 8
- 4
- 4
- 2
.
- 7
.
.
- 10
- 5
- 3
- 4
Yes
+ 5/293
+ 1/173
.
- 2
- 1
+ 5/238
...

result:

ok ok (1000 test cases)

Test #8:

score: 0
Accepted
time: 20ms
memory: 3536kb

input:

1000 13
1 19917
? 30 39
? 79 81
? 32 33
? 35 95
? 14 84
? 6 17
? 11 31
? 5 8
? 34 89
? 38 50
? 10 10
? 22 54
? 5 92
1 16730
? 56 59
? 40 55
? 42 54
? 5 9
? 65 79
? 7 11
? 25 34
? 2 10
? 29 51
? 2 7
? 39 48
? 4 67
? 24 36
8 17772
? 17 35
? 36 46
? 42 63
? 2 11
? 59 84
? 4 36
? 9 21
? 76 86
? 48 89
? ...

output:

No
No
No
Yes
+ 95/259
+ 22/240
- 22
+ 82/240
- 8
- 8
+ 74/240
- 40
- 60
- 38
- 25
- 99
- 52
No
No
No
Yes
+ 54/241
+ 31/240
+ 52/240
+ 11/240
+ 20/240
+ 74/240
- 14
+ 73/240
+ 92/240
- 67
- 9
- 55
- 97
No
Yes
+ 75/299
+ 52/268
+ 27/240
- 3
- 9
- 89
- 17
- 79
- 44
- 71
- 39
- 44
- 12
No
No
No
No
No
Ye...

result:

ok ok (1000 test cases)

Test #9:

score: 0
Accepted
time: 21ms
memory: 3604kb

input:

1000 13
11 8761
? 14 96
? 9 35
? 12 16
? 28 55
? 2 27
? 6 7
? 17 50
? 25 31
? 4 11
? 62 98
? 10 19
? 3 3
? 9 13
6 12408
? 46 73
? 22 46
? 24 66
? 19 43
? 13 17
? 2 3
? 14 23
? 6 6
? 61 67
? 17 25
? 1 62
? 59 64
? 2 32
10 4393
? 11 90
? 19 58
? 61 98
? 42 43
? 55 69
? 32 35
? 26 70
? 2 5
? 14 65
? 16...

output:

Yes
+ 96/241
+ 35/240
+ 16/240
+ 46/240
+ 26/240
+ 2/240
+ 34/240
+ 7/240
+ 8/240
+ 37/240
+ 10/240
- 3
- 13
No
No
No
Yes
+ 30/259
+ 68/240
- 30
- 33
- 59
+ 84/240
- 45
+ 74/240
- 43
- 1
- 25
- 81
- 19
Yes
+ 11/241
+ 6/240
+ 50/240
+ 6/240
- 75
- 52
+ 4/240
+ 3/240
+ 1/240
+ 19/240
- 26
- 9
- 7
Yes
...

result:

ok ok (1000 test cases)

Test #10:

score: 0
Accepted
time: 21ms
memory: 3588kb

input:

1000 13
8 4901
? 16 42
? 66 89
? 67 91
? 6 10
? 1 63
? 2 10
? 44 65
? 22 45
? 2 29
? 27 47
? 18 32
? 11 64
? 17 30
11 12279
? 65 99
? 20 33
? 57 71
? 20 68
? 38 58
? 4 4
? 2 4
? 19 95
? 58 74
? 23 39
? 29 71
? 17 49
? 4 32
3 11014
? 9 37
? 15 61
? 3 34
? 5 78
? 24 54
? 26 34
? 18 23
? 4 20
? 26 36
?...

output:

Yes
+ 27/241
+ 24/240
+ 25/240
+ 5/240
- 63
+ 9/240
+ 22/240
+ 24/240
- 29
+ 21/240
- 32
- 64
- 30
Yes
+ 99/259
+ 33/240
+ 71/240
+ 68/240
+ 58/240
+ 4/240
+ 4/240
+ 78/240
+ 17/240
+ 17/240
+ 43/240
- 49
- 32
No
No
No
No
No
Yes
- 9
+ 76/241
- 18
+ 87/240
- 10
- 12
- 3
+ 65/240
+ 89/240
- 25
+ 68/24...

result:

ok ok (1000 test cases)

Test #11:

score: 0
Accepted
time: 19ms
memory: 3792kb

input:

1000 13
5 2258
? 89 96
? 6 46
? 8 75
? 18 66
? 1 3
? 35 96
? 60 88
? 4 68
? 12 51
? 84 95
? 7 46
? 9 21
? 52 52
11 12149
? 27 29
? 11 32
? 61 76
? 89 94
? 26 96
? 80 97
? 89 89
? 25 84
? 20 90
? 51 57
? 60 89
? 18 35
? 3 28
8 10339
? 81 92
? 32 72
? 54 73
? 3 9
? 29 35
? 24 25
? 70 72
? 23 36
? 4 16...

output:

Yes
+ 12/258
- 46
- 75
- 66
+ 3/240
- 96
+ 29/240
- 68
- 51
+ 12/240
- 46
- 21
+ 1/240
Yes
+ 29/249
+ 32/240
+ 76/240
+ 91/240
+ 71/240
+ 18/240
+ 1/240
+ 60/240
+ 71/240
+ 7/240
+ 30/240
- 35
- 28
Yes
+ 92/299
+ 72/299
+ 73/299
+ 9/299
+ 35/299
+ 25/244
+ 72/240
+ 36/240
- 16
- 27
- 7
- 1
- 26
Yes
...

result:

ok ok (1000 test cases)

Test #12:

score: 0
Accepted
time: 20ms
memory: 3828kb

input:

1000 13
6 11102
? 16 53
? 83 100
? 52 62
? 10 25
? 23 46
? 59 86
? 1 3
? 78 90
? 23 62
? 11 40
? 51 55
? 19 78
? 52 73
11 19315
? 48 48
? 14 23
? 13 89
? 2 28
? 27 29
? 97 98
? 30 70
? 77 80
? 67 97
? 10 83
? 4 11
? 4 28
? 1 24
10 16960
? 41 47
? 9 80
? 2 8
? 26 32
? 1 20
? 24 24
? 10 17
? 37 63
? 3...

output:

Yes
+ 53/299
+ 100/299
- 62
- 25
- 46
+ 86/299
- 3
+ 90/245
- 62
- 40
- 55
+ 78/240
+ 73/240
No
No
Yes
+ 62/247
+ 20/240
+ 66/240
+ 26/240
+ 45/240
+ 57/240
- 36
- 33
- 60
- 16
+ 83/240
- 81
- 79
No
Yes
+ 19/255
+ 43/240
- 88
+ 19/240
+ 3/240
+ 16/240
- 40
+ 3/240
- 63
- 16
- 80
- 19
- 57
No
No
Yes
...

result:

ok ok (1000 test cases)

Test #13:

score: 0
Accepted
time: 23ms
memory: 3824kb

input:

1000 13
6 2161
? 11 17
? 5 36
? 88 95
? 31 44
? 59 85
? 7 18
? 35 88
? 4 8
? 2 89
? 20 30
? 58 88
? 14 40
? 22 30
7 3123
? 19 30
? 15 19
? 84 90
? 65 84
? 59 71
? 9 54
? 2 92
? 2 9
? 21 42
? 15 44
? 17 33
? 32 99
? 19 19
7 3439
? 51 72
? 24 37
? 19 36
? 60 91
? 57 61
? 5 23
? 25 76
? 41 95
? 9 24
? ...

output:

No
Yes
+ 25/243
+ 5/240
+ 7/240
+ 20/240
+ 13/240
- 54
- 92
+ 8/240
- 42
- 44
- 33
- 99
+ 1/240
Yes
+ 22/259
+ 14/240
+ 18/240
- 91
+ 5/240
+ 19/240
- 76
- 95
- 24
+ 4/240
+ 12/240
- 97
- 12
Yes
- 59
+ 2/248
- 64
+ 11/240
+ 19/240
+ 3/240
- 58
+ 4/240
+ 1/240
- 95
- 19
- 80
- 11
No
No
No
Yes
+ 1/255...

result:

ok ok (1000 test cases)

Test #14:

score: 0
Accepted
time: 27ms
memory: 3820kb

input:

1000 13
6 2111
? 8 61
? 1 14
? 36 64
? 3 32
? 16 63
? 19 62
? 19 21
? 14 17
? 3 52
? 33 83
? 51 66
? 13 23
? 12 43
7 2808
? 5 8
? 21 85
? 10 22
? 23 84
? 17 50
? 24 61
? 3 6
? 4 63
? 7 30
? 25 76
? 18 92
? 23 39
? 19 39
6 1989
? 91 93
? 28 41
? 17 53
? 66 73
? 7 26
? 35 50
? 2 2
? 3 86
? 29 32
? 10 ...

output:

No
No
Yes
+ 4/249
+ 14/240
- 53
+ 8/240
- 26
- 50
+ 1/240
- 86
+ 4/240
- 44
- 22
+ 2/240
- 68
Yes
+ 14/240
+ 22/240
+ 4/240
+ 11/240
+ 35/240
+ 1/240
+ 1/240
- 71
- 82
- 90
- 89
- 43
- 86
No
No
Yes
+ 29/246
+ 20/240
+ 8/240
+ 8/240
- 87
+ 16/240
+ 3/240
- 35
- 15
- 69
- 53
- 29
- 63
No
No
No
No
No
N...

result:

ok ok (1000 test cases)

Test #15:

score: 0
Accepted
time: 30ms
memory: 3588kb

input:

1000 13
6 11435
? 11 17
? 5 36
? 88 95
? 31 44
? 59 85
? 7 18
? 35 88
? 4 8
? 2 89
? 20 30
? 58 88
? 14 40
? 22 30
7 12636
? 19 30
? 15 19
? 84 90
? 65 84
? 59 71
? 9 54
? 2 92
? 2 9
? 21 42
? 15 44
? 17 33
? 32 99
? 19 19
7 12572
? 51 72
? 24 37
? 19 36
? 60 91
? 57 61
? 5 23
? 25 76
? 41 95
? 9 24...

output:

Yes
- 17
- 36
+ 95/299
+ 44/299
+ 85/299
- 18
+ 88/299
- 8
+ 89/299
- 30
+ 88/280
- 40
- 30
No
Yes
+ 72/299
- 37
- 36
+ 91/299
+ 61/299
- 23
+ 76/299
+ 95/299
- 24
- 9
+ 39/299
+ 97/298
- 12
No
No
No
No
No
Yes
+ 87/299
- 11
+ 53/299
+ 70/299
+ 34/299
- 23
+ 66/299
- 27
- 25
+ 89/299
+ 36/296
- 22
- ...

result:

ok ok (1000 test cases)

Test #16:

score: 0
Accepted
time: 29ms
memory: 3592kb

input:

1000 13
6 9645
? 8 61
? 1 14
? 36 64
? 3 32
? 16 63
? 19 62
? 19 21
? 14 17
? 3 52
? 33 83
? 51 66
? 13 23
? 12 43
7 12161
? 5 8
? 21 85
? 10 22
? 23 84
? 17 50
? 24 61
? 3 6
? 4 63
? 7 30
? 25 76
? 18 92
? 23 39
? 19 39
6 10123
? 91 93
? 28 41
? 17 53
? 66 73
? 7 26
? 35 50
? 2 2
? 3 86
? 29 32
? 1...

output:

Yes
+ 61/299
- 14
+ 64/299
- 32
+ 63/299
+ 62/299
- 21
- 17
- 52
+ 83/299
+ 66/290
- 23
- 43
Yes
- 8
+ 85/299
- 22
+ 84/299
+ 50/299
+ 61/299
- 6
+ 63/299
- 30
+ 76/299
+ 92/287
- 39
- 39
Yes
+ 93/299
- 41
+ 53/299
+ 73/299
- 26
+ 50/299
- 2
+ 86/299
- 32
- 44
- 22
- 5
+ 68/288
No
No
Yes
+ 61/299
+ ...

result:

ok ok (1000 test cases)

Test #17:

score: 0
Accepted
time: 1ms
memory: 3728kb

input:

21 13
13 0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
12 0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
13 1
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
12 0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/...

output:

Yes
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
No
No
Yes
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
+ 1/0
- 1
No
Yes
.
.
.
.
.
.
.
.
.
.
.
.
.
No
Yes
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
- 100
Yes
- 100
- 10...

result:

ok ok (21 test cases)