QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#816704#127. Card Game StrategyQingyuAC ✓380ms7824kbC++233.1kb2024-12-16 16:56:362024-12-16 16:56:37

Judging History

This is the latest submission verdict.

  • [2024-12-16 16:56:37]
  • Judged
  • Verdict: AC
  • Time: 380ms
  • Memory: 7824kb
  • [2024-12-16 16:56:36]
  • Submitted

answer

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

#define rep(i, N) for (int i = 0; i < (N); i++)
#define all(a) (a).begin(), (a).end()
#define pb push_back

using ll = long long;
using i_i = tuple<int, int>;

random_device rd;
mt19937 mt = mt19937(rd());

bool chmin(int& x, int y) {
    if (x > y) {
        x = y;
        return true;
    }
    return false;
}

bool chmax(int& x, int y) {
    if (x < y) {
        x = y;
        return true;
    }
    return false;
}

vector<int> solve(vector<int> x, int K) {
    int N = x.size();
    int W = 0, W_K = 0;
    rep(i, N) W += x[i];
    rep(i, K) W_K += x[i];
    vector<int> dp0(W + 1, K + 1), dp1(W + 1, K + 1);
    vector<int> t(W + 1, N + 1);
    dp0[W_K] = 0;
    t[W_K] = K;
    for (int i = K; i < N; i++) {
        vector<int> _dp0 = dp0;
        rep(w0, W + 1) if (dp0[w0] < K + 1) {
            int w1 = w0 + x[i];
            for (int j = dp0[w0]; j < min(K, dp1[w1]); j++) {
                int _w0 = w1 - x[j];
                chmin(_dp0[_w0], j + 1);
            }
            chmin(dp1[w1], dp0[w0]);
        }
        dp0 = _dp0;
        rep(w0, W + 1) if (dp0[w0] < K + 1) chmin(t[w0], i + 1);
    }
    return t;
}

vector<bool> fukugen(vector<int> x, int K, int w_target) {
    int N = x.size();
    if (K == 1) {
        vector<bool> ans(N);
        rep(i, N) if (x[i] == w_target) {
            ans[i] = true;
            break;
        }
        return ans;
    }
    vector<int> p(N);
    rep(i, N) p[i] = i;
    shuffle(all(p), mt);
    vector<int> x1(N), x2(N);
    rep(i, N) x1[i] = x2[N - 1 - i] = x[p[i]];
    int K1 = K / 2, K2 = K - K1;
    vector<int> t1 = solve(x1, K1);
    vector<int> t2 = solve(x2, K2);
    int time_opt = -1, w1_opt;
    rep(w1, w_target + 1) {
        int w2 = w_target - w1;
        if (t1[w1] + t2[w2] <= N) {
            int time = t1[w1] * w1 + t2[w2] * w2;
            if (chmax(time_opt, time)) w1_opt = w1;
        }
    }
    int w2_opt = w_target - w1_opt;
    int N1 = t1[w1_opt], N2 = t2[w2_opt];
    x1.resize(N1);
    x2.resize(N2);
    vector<bool> sol1 = fukugen(x1, K1, w1_opt);
    vector<bool> sol2 = fukugen(x2, K2, w2_opt);
    vector<bool> sol(N);
    rep(i1, N1) sol[p[i1]] = sol1[i1];
    rep(i2, N2) sol[p[N - 1 - i2]] = sol2[i2];
    return sol;
}

int main() {
    int N, K, a, b;
    cin >> N >> K >> a >> b;
    vector<int> x(N);
    rep(i, N) cin >> x[i];
    vector<int> t = solve(x, K);
    int W = t.size() - 1;
    set<int> pos;
    rep(w, W + 1) if (t[w] < N + 1) pos.insert(w);
    int ma = -1, alice, bob;
    for (int w = a; w <= b; w++) {
        int mi = INT_MAX / 2, w_mi;
        auto it = pos.lower_bound(w);
        if (it != pos.end()) if (chmin(mi, abs(*it - w))) w_mi = *it;
        if (it != pos.begin()) if (chmin(mi, abs(*prev(it) - w))) w_mi = *prev(it);
        if (chmax(ma, mi)) {
            alice = w;
            bob = w_mi;
        }
    }
    vector<bool> ans = fukugen(x, K, bob);
    cout << alice << endl;
    cerr << bob << endl;
    rep(i, N) if (ans[i]) cout << i + 1 << ' ';
    cout << endl;
}

詳細信息

Test #1:

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

input:

9 6 11 86
4 10 14 11 3 11 3 9 0

output:

86
1 2 3 4 6 8 

result:

ok Solution is correct

Test #2:

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

input:

10 1 0 28
0 0 8 15 13 14 6 4 0 3

output:

28
4 

result:

ok Solution is correct

Test #3:

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

input:

10 6 43 44
5 1 13 15 14 11 7 11 6 1

output:

43
1 2 4 5 7 10 

result:

ok Solution is correct

Test #4:

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

input:

8 3 27 41
0 6 15 15 9 11 12 6

output:

28
2 6 7 

result:

ok Solution is correct

Test #5:

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

input:

10 9 49 79
13 7 9 10 8 4 9 15 1 2

output:

49
1 2 3 4 5 6 7 9 10 

result:

ok Solution is correct

Test #6:

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

input:

8 4 8 93
6 12 13 9 7 14 0 2

output:

93
2 3 4 6 

result:

ok Solution is correct

Test #7:

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

input:

8 1 6 32
6 2 9 14 15 11 4 4

output:

32
5 

result:

ok Solution is correct

Test #8:

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

input:

9 8 8 86
6 9 4 6 3 12 14 4 10

output:

8
1 2 3 4 5 6 8 9 

result:

ok Solution is correct

Test #9:

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

input:

8 3 78 88
13 0 0 13 0 9 7 6

output:

88
1 4 6 

result:

ok Solution is correct

Test #10:

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

input:

9 8 2 36
1 4 7 14 0 13 9 5 10

output:

2
1 2 3 5 6 7 8 9 

result:

ok Solution is correct

Test #11:

score: 0
Accepted
time: 95ms
memory: 5460kb

input:

298 190 9601 174172
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96...

output:

174172
109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 1...

result:

ok Solution is correct

Test #12:

score: 0
Accepted
time: 71ms
memory: 4904kb

input:

294 272 29720 116393
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9...

output:

116393
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 11...

result:

ok Solution is correct

Test #13:

score: 0
Accepted
time: 81ms
memory: 4496kb

input:

291 20 23333 101835
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96...

output:

101835
272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 

result:

ok Solution is correct

Test #14:

score: 0
Accepted
time: 94ms
memory: 5116kb

input:

298 98 145005 162222
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9...

output:

162222
201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 2...

result:

ok Solution is correct

Test #15:

score: 0
Accepted
time: 75ms
memory: 4592kb

input:

292 14 28676 91087
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ...

output:

91087
279 280 281 282 283 284 285 286 287 288 289 290 291 292 

result:

ok Solution is correct

Test #16:

score: 0
Accepted
time: 77ms
memory: 4920kb

input:

292 231 157889 178494
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 ...

output:

178494
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144...

result:

ok Solution is correct

Test #17:

score: 0
Accepted
time: 81ms
memory: 4744kb

input:

298 28 10512 28063
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ...

output:

28063
271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 

result:

ok Solution is correct

Test #18:

score: 0
Accepted
time: 71ms
memory: 4676kb

input:

293 274 31715 89643
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96...

output:

89643
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 11...

result:

ok Solution is correct

Test #19:

score: 0
Accepted
time: 89ms
memory: 5472kb

input:

296 135 78759 110744
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9...

output:

110744
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 2...

result:

ok Solution is correct

Test #20:

score: 0
Accepted
time: 89ms
memory: 5160kb

input:

294 179 28891 161581
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9...

output:

161581
116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 1...

result:

ok Solution is correct

Test #21:

score: 0
Accepted
time: 370ms
memory: 7540kb

input:

596 248 80181 96476
272 135 194 106 250 23 60 220 245 293 199 149 286 30 299 95 84 112 12 84 286 52 58 190 173 39 62 54 277 227 29 236 20 289 106 233 211 81 286 198 43 227 73 17 172 298 164 119 151 32 146 66 88 117 47 129 133 210 264 98 248 78 199 209 106 243 61 161 147 274 109 37 196 195 83 154 128...

output:

96476
1 3 5 8 9 10 11 13 15 21 24 25 29 30 32 34 36 37 39 40 42 45 46 58 59 61 63 64 66 70 73 74 78 81 83 84 86 91 92 93 94 95 97 98 101 102 103 107 109 111 112 115 117 122 123 127 137 138 140 143 147 153 158 159 161 166 167 168 169 172 176 179 180 187 192 193 203 205 206 207 210 214 215 216 217 219...

result:

ok Solution is correct

Test #22:

score: 0
Accepted
time: 354ms
memory: 7048kb

input:

593 189 90227 123263
258 259 117 264 218 259 112 249 135 5 134 111 136 214 172 112 4 178 17 128 97 29 73 174 151 3 251 191 8 98 156 82 89 83 77 253 60 233 139 6 287 93 88 179 102 288 217 241 260 146 217 105 26 38 20 238 3 220 213 95 125 98 160 24 125 40 250 10 99 118 16 186 174 2 270 284 245 145 137...

output:

123263
1 2 4 5 6 8 14 27 36 38 41 46 47 48 49 51 56 58 59 67 75 76 77 80 84 87 88 89 92 93 94 96 98 103 109 116 120 121 122 124 125 129 131 136 138 139 141 142 146 147 153 154 158 159 160 162 165 166 176 180 181 193 195 201 203 212 214 215 220 221 228 230 234 235 237 239 241 242 245 250 255 258 260 ...

result:

ok Solution is correct

Test #23:

score: 0
Accepted
time: 336ms
memory: 6164kb

input:

596 22 19813 46601
236 210 257 90 37 120 295 206 227 51 288 54 7 2 183 279 289 250 153 14 163 162 26 137 300 135 283 129 207 228 235 71 217 206 60 200 261 86 299 37 153 259 268 65 58 144 128 202 224 247 217 287 80 151 67 116 265 294 83 8 17 199 242 74 296 215 88 30 198 95 38 113 197 155 208 113 96 1...

output:

46601
7 25 39 58 65 81 98 192 196 213 240 279 289 307 355 424 428 474 506 521 532 540 

result:

ok Solution is correct

Test #24:

score: 0
Accepted
time: 364ms
memory: 6112kb

input:

595 61 3792 88072
244 140 212 19 247 236 163 273 149 70 157 52 203 210 195 1 159 175 185 178 271 231 104 240 75 55 216 95 237 254 86 260 46 250 63 211 232 100 249 87 198 40 247 219 66 111 13 17 197 36 239 125 67 170 79 160 292 183 143 103 174 259 31 208 65 147 140 195 3 80 41 127 38 8 247 248 251 11...

output:

88072
8 21 57 88 90 94 100 103 112 117 125 130 149 150 151 156 158 170 183 186 199 206 215 232 233 235 270 281 316 317 323 353 359 367 372 376 382 388 400 408 412 415 425 432 439 446 448 461 465 466 475 482 495 515 541 545 564 566 573 589 593 

result:

ok Solution is correct

Test #25:

score: 0
Accepted
time: 289ms
memory: 6880kb

input:

597 522 64469 93800
90 230 273 108 92 81 245 207 204 217 49 276 292 194 212 226 292 111 286 92 77 62 150 95 159 33 179 51 110 297 62 113 36 262 147 256 87 3 148 102 68 207 43 194 286 57 125 205 240 81 66 275 194 253 282 257 209 85 270 278 148 221 72 112 147 43 22 146 57 140 73 63 181 190 48 176 87 2...

output:

64469
1 2 4 5 6 7 8 9 10 11 14 15 16 18 20 21 22 23 24 25 26 27 28 29 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 53 54 56 57 58 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 80 81 82 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 106 107 108 109 111 112 ...

result:

ok Solution is correct

Test #26:

score: 0
Accepted
time: 329ms
memory: 7548kb

input:

597 428 46131 171333
150 275 270 184 63 72 90 236 19 185 224 196 56 94 108 153 207 60 218 181 255 211 250 260 126 186 126 69 299 222 49 126 173 222 41 135 98 121 172 181 271 90 68 34 247 182 161 33 191 35 300 280 266 75 279 231 84 221 254 52 44 6 99 1 124 254 70 162 126 261 16 103 84 29 173 240 112 ...

output:

171333
1 2 3 4 7 8 10 11 12 14 15 16 17 19 20 21 22 23 24 25 26 27 29 30 32 33 34 36 37 38 39 40 41 42 45 46 47 49 51 52 53 55 56 57 58 59 63 65 66 68 69 70 72 73 75 76 77 79 80 81 82 83 85 86 88 90 91 94 95 96 97 98 99 100 105 106 107 108 109 111 112 115 116 117 118 119 120 121 122 124 125 127 130 ...

result:

ok Solution is correct

Test #27:

score: 0
Accepted
time: 334ms
memory: 7544kb

input:

593 381 65055 146299
84 282 19 144 176 244 122 187 9 252 207 217 271 167 158 181 181 222 204 212 12 115 100 222 31 83 136 72 242 142 256 82 294 103 193 7 117 107 6 113 247 200 243 145 62 220 1 240 65 276 35 185 153 22 105 289 185 279 9 7 57 202 244 163 5 178 89 207 104 156 174 32 256 287 282 223 299...

output:

146299
2 4 5 6 7 8 10 11 12 13 14 15 16 17 18 19 20 22 24 27 29 30 31 33 35 37 38 40 41 42 43 44 46 48 50 52 53 56 57 58 62 63 64 66 68 70 71 73 74 75 76 77 80 81 84 85 86 88 89 90 91 92 93 96 98 103 106 108 109 110 111 113 114 116 119 120 121 123 125 126 128 131 132 135 136 137 140 143 145 147 148 ...

result:

ok Solution is correct

Test #28:

score: 0
Accepted
time: 372ms
memory: 7628kb

input:

597 220 2761 3054
239 65 107 77 272 215 118 285 262 245 254 88 270 5 271 283 122 26 36 274 73 243 124 81 104 148 141 144 162 276 191 284 31 258 253 236 57 113 174 111 177 246 18 293 38 200 199 6 235 32 187 274 76 63 251 133 20 9 31 219 230 29 12 45 299 139 272 296 16 153 225 115 169 189 272 151 8 15...

output:

2761
2 3 4 12 14 18 19 21 24 25 33 37 43 45 48 50 53 54 57 58 59 62 63 64 69 77 79 84 85 86 91 93 94 102 107 110 111 114 115 118 119 120 121 130 134 136 138 141 143 146 149 150 152 158 161 162 163 164 170 173 174 181 182 185 186 190 192 194 195 197 203 206 211 212 217 220 223 226 227 233 234 236 238...

result:

ok Solution is correct

Test #29:

score: 0
Accepted
time: 380ms
memory: 7648kb

input:

599 286 29238 47542
133 273 78 161 269 238 245 111 1 263 189 66 127 255 219 103 104 147 111 238 240 220 107 77 30 229 209 267 134 76 197 9 255 185 224 173 92 256 213 13 80 62 173 45 150 238 205 227 3 221 24 23 127 129 181 84 113 157 32 268 151 251 235 159 26 212 139 11 55 107 141 161 284 250 122 288...

output:

29238
1 3 4 5 9 12 19 21 22 25 28 30 37 40 42 43 44 49 51 52 56 57 59 60 63 65 68 69 73 74 77 78 79 80 82 83 84 86 88 89 91 92 95 96 97 98 99 100 101 103 106 111 113 118 119 120 121 123 125 126 127 129 131 132 133 136 137 138 139 140 141 143 144 146 148 149 150 153 155 156 157 160 162 166 170 171 17...

result:

ok Solution is correct

Test #30:

score: 0
Accepted
time: 323ms
memory: 7268kb

input:

595 453 10019 153061
49 284 299 36 63 231 183 29 38 120 66 242 73 188 210 133 140 11 133 281 168 5 5 48 189 36 243 271 208 294 280 23 59 213 137 72 6 219 262 286 65 296 207 7 9 97 151 34 65 80 170 152 274 299 101 152 182 99 247 223 100 92 193 212 177 44 61 287 281 287 239 197 274 235 273 163 7 151 5...

output:

153061
2 3 5 6 7 10 11 12 13 14 15 16 17 19 20 21 25 27 28 29 30 31 34 35 36 38 39 40 41 42 43 46 47 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 68 69 70 71 72 73 74 75 76 78 80 81 83 84 86 87 89 92 93 94 95 96 97 100 101 102 103 104 105 106 111 112 113 114 115 116 117 120 121 123 124 126 128...

result:

ok Solution is correct

Test #31:

score: 0
Accepted
time: 363ms
memory: 6792kb

input:

595 131 112283 124613
154 31 9 109 150 291 191 62 133 50 271 52 271 259 172 136 25 214 227 170 235 199 198 213 263 84 47 97 203 0 82 25 287 182 47 14 203 89 208 187 10 17 57 287 20 96 132 98 254 269 181 1 167 237 215 14 182 216 269 192 121 271 85 274 58 189 16 190 160 122 87 245 104 22 142 139 268 9...

output:

124613
6 11 13 14 25 33 44 49 50 59 62 64 72 77 79 84 86 90 91 107 115 121 122 125 128 129 131 133 142 145 152 154 155 157 161 164 165 178 179 181 185 186 187 193 195 199 204 205 215 225 230 231 239 247 251 256 262 265 270 273 279 286 287 301 306 307 308 310 315 324 326 328 329 332 338 349 361 363 3...

result:

ok Solution is correct

Test #32:

score: 0
Accepted
time: 332ms
memory: 7824kb

input:

593 358 145980 164059
191 269 129 126 50 228 296 163 257 145 18 127 240 74 38 264 81 245 249 183 290 81 11 11 157 130 16 97 276 110 239 102 30 60 234 111 248 88 87 137 116 250 43 180 189 38 111 102 46 247 83 176 278 60 83 174 211 124 153 166 110 147 180 76 5 300 247 14 40 120 229 262 15 152 79 145 1...

output:

164059
1 2 3 4 6 7 8 9 10 12 13 16 18 19 20 21 25 26 29 31 35 37 40 41 42 44 45 50 52 53 56 57 58 59 60 62 63 66 67 70 71 72 74 76 78 81 82 83 85 87 88 90 91 92 93 94 95 97 100 102 104 105 107 109 111 113 114 116 118 120 121 123 124 125 127 130 132 133 134 135 137 139 140 142 143 144 145 146 147 148...

result:

ok Solution is correct

Test #33:

score: 0
Accepted
time: 355ms
memory: 7344kb

input:

599 218 33890 35176
48 255 209 177 172 149 269 117 121 98 124 251 112 74 140 291 233 265 85 20 8 159 232 293 295 85 240 211 291 160 56 77 243 240 73 231 20 83 210 49 265 228 129 259 96 190 177 31 145 270 153 135 100 296 204 265 258 79 190 125 191 2 116 66 84 158 261 139 235 134 252 56 27 178 3 33 23...

output:

33890
1 8 10 13 14 17 18 20 23 24 25 26 27 31 32 35 36 37 40 41 44 50 53 54 56 57 67 69 78 82 83 87 88 89 90 91 96 97 100 101 104 106 108 109 111 115 121 123 129 131 132 135 139 140 142 145 154 156 157 158 165 166 167 169 171 175 176 178 179 185 190 192 197 203 205 212 217 228 231 236 237 238 241 24...

result:

ok Solution is correct

Test #34:

score: 0
Accepted
time: 365ms
memory: 7404kb

input:

592 216 34372 95045
64 7 143 189 246 150 35 10 65 160 177 288 164 209 216 4 170 55 104 180 65 173 181 293 104 178 77 138 221 276 279 51 187 222 52 55 169 204 12 146 156 254 235 120 70 104 209 98 173 81 196 199 120 100 19 224 42 77 43 65 223 19 49 175 234 183 298 47 36 93 249 244 174 38 112 51 140 12...

output:

95045
4 5 12 14 15 24 29 30 31 34 38 42 43 47 51 52 56 61 65 67 71 72 80 81 83 89 90 91 92 93 94 95 96 97 98 100 101 102 105 107 116 119 120 124 125 126 127 129 131 135 136 138 150 151 154 156 158 159 160 163 165 174 175 177 181 184 194 200 210 214 217 219 220 221 223 228 231 233 234 239 244 245 251...

result:

ok Solution is correct

Test #35:

score: 0
Accepted
time: 301ms
memory: 6920kb

input:

597 497 135662 154611
128 58 57 277 205 191 110 43 212 145 293 268 43 248 85 264 233 86 19 224 95 284 229 64 25 33 290 66 259 154 58 45 57 289 281 193 252 9 241 231 270 4 105 227 100 217 242 286 146 219 200 193 294 89 157 71 295 258 33 279 293 35 24 259 138 154 156 118 90 229 57 289 127 187 115 147 ...

output:

154611
1 2 3 4 5 6 7 9 10 11 12 14 15 16 17 18 20 21 22 23 24 27 28 29 30 31 33 34 35 36 37 39 40 41 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 60 61 64 65 66 67 68 69 70 71 72 73 74 75 76 78 79 80 81 82 83 84 85 86 87 88 89 90 93 94 95 96 97 99 100 101 102 103 105 106 107 108 109 110 111 112 1...

result:

ok Solution is correct

Test #36:

score: 0
Accepted
time: 349ms
memory: 6040kb

input:

596 69 87022 104314
20 126 73 0 135 121 167 172 182 247 264 96 225 60 105 90 164 132 91 240 234 109 221 75 90 171 181 16 194 124 145 79 125 262 86 252 244 32 89 244 210 206 89 270 191 289 111 143 30 202 169 194 107 154 244 49 267 274 96 168 169 169 87 37 36 162 149 182 29 106 90 134 38 194 277 160 1...

output:

104314
44 46 57 58 75 86 93 103 109 121 142 151 153 156 163 169 170 172 196 199 202 207 209 212 217 235 236 256 269 284 285 286 301 303 306 308 312 316 320 330 336 342 347 357 366 371 389 391 412 423 432 451 453 458 462 472 474 479 487 493 497 498 510 529 530 546 573 579 595 

result:

ok Solution is correct

Test #37:

score: 0
Accepted
time: 259ms
memory: 6216kb

input:

594 575 32138 87119
65 193 30 70 115 166 92 61 18 66 223 167 130 280 66 241 247 277 123 191 177 261 66 150 232 45 197 56 233 90 96 261 37 65 10 274 261 14 107 2 87 117 2 235 158 276 249 188 130 270 219 299 88 152 209 138 165 291 65 39 86 204 50 4 115 214 20 22 275 143 210 122 160 98 169 110 34 70 14...

output:

32138
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 53 54 55 56 57 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 ...

result:

ok Solution is correct

Test #38:

score: 0
Accepted
time: 356ms
memory: 6276kb

input:

592 61 50712 93195
233 254 193 122 123 282 118 46 41 54 300 225 53 40 106 295 81 248 71 102 105 40 239 23 83 177 68 190 207 279 146 54 207 236 26 259 159 160 59 193 285 283 38 216 284 59 231 199 253 100 265 8 220 252 53 130 296 237 121 228 281 271 256 278 126 261 159 176 203 78 245 219 41 127 155 27...

output:

93195
6 11 16 30 41 42 45 57 61 64 76 112 118 135 156 160 188 193 194 196 203 224 227 235 243 265 271 273 274 284 309 318 319 323 330 343 350 354 357 360 415 425 428 431 440 443 449 458 491 494 496 498 504 518 547 549 553 557 566 575 581 

result:

ok Solution is correct

Test #39:

score: 0
Accepted
time: 316ms
memory: 5476kb

input:

591 16 14326 18007
238 128 232 2 27 247 6 70 268 54 281 280 148 139 17 267 147 58 123 136 285 15 215 8 231 207 188 149 65 267 164 95 208 63 119 101 264 265 21 255 108 265 217 66 291 57 90 210 159 226 241 58 213 130 205 153 225 139 123 259 36 184 82 21 230 279 12 194 83 112 165 295 155 11 123 214 282...

output:

18007
72 81 136 150 206 294 349 433 440 457 459 509 511 516 548 577 

result:

ok Solution is correct

Test #40:

score: 0
Accepted
time: 358ms
memory: 7312kb

input:

597 184 113482 147555
289 23 127 102 142 50 272 116 246 300 108 167 88 24 148 217 300 164 79 291 145 68 278 21 167 220 22 66 24 51 225 51 169 219 64 47 37 26 160 64 195 215 185 212 268 195 101 192 4 187 111 202 1 213 158 134 193 195 229 149 96 173 84 73 283 209 206 147 186 258 175 91 108 155 17 107 ...

output:

147555
1 7 9 10 16 17 20 23 26 31 34 42 44 45 52 54 59 65 66 67 70 77 79 80 83 95 100 102 103 104 106 107 121 122 123 124 125 126 131 133 136 137 139 143 153 154 164 166 173 175 176 177 179 183 187 197 199 200 203 204 207 209 211 215 216 217 220 221 222 223 226 229 232 234 237 241 247 249 254 258 26...

result:

ok Solution is correct

Test #41:

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

input:

10 4 358 792
243 105 181 4 221 67 198 227 160 212

output:

365
2 3 4 6 

result:

ok Solution is correct

Test #42:

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

input:

20 8 998 1516
103 142 56 86 11 53 224 210 15 212 252 27 117 55 240 245 126 295 227 237

output:

998
1 2 6 11 12 14 15 17 

result:

ok Solution is correct

Test #43:

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

input:

30 12 1714 2748
269 199 32 215 7 123 13 215 80 218 212 66 145 246 22 45 202 38 100 229 59 217 30 169 83 282 94 228 294 15

output:

2745
1 2 8 10 13 14 17 20 22 26 28 29 

result:

ok Solution is correct

Test #44:

score: 0
Accepted
time: 3ms
memory: 3912kb

input:

40 16 3455 3574
127 4 120 224 217 105 6 228 103 179 291 188 259 251 45 191 90 129 221 295 14 31 149 221 20 28 224 32 209 119 202 253 297 84 253 72 51 19 106 140

output:

3455
5 8 11 12 13 14 19 20 24 25 26 27 29 32 33 35 

result:

ok Solution is correct

Test #45:

score: 0
Accepted
time: 301ms
memory: 7684kb

input:

600 600 0 180000
300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300 300...

output:

0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 10...

result:

ok Solution is correct

Test #46:

score: 0
Accepted
time: 315ms
memory: 7656kb

input:

600 590 0 180000
292 291 293 295 290 294 296 300 291 294 296 298 292 294 290 298 295 291 294 298 290 294 297 300 300 291 292 295 294 299 299 299 297 297 294 298 296 297 295 299 294 293 295 300 297 294 293 296 296 292 290 300 298 294 299 299 298 300 298 299 299 291 294 298 298 292 290 300 293 296 295...

output:

0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 10...

result:

ok Solution is correct

Test #47:

score: 0
Accepted
time: 160ms
memory: 5988kb

input:

376 220 21073 155929
225 123 164 250 240 250 261 156 192 255 182 247 249 127 166 189 245 229 142 245 159 184 229 288 275 149 211 176 283 187 142 132 113 251 186 150 134 291 175 266 257 169 145 259 270 298 259 192 285 278 213 212 277 165 141 287 136 134 219 162 235 252 172 164 170 239 281 126 295 137...

output:

155929
1 4 5 6 7 9 10 12 13 17 18 20 23 24 25 27 29 34 38 40 41 44 45 46 47 48 49 50 51 52 53 56 59 61 62 66 67 69 71 72 74 76 77 81 82 83 85 88 89 90 91 92 95 97 99 101 102 105 107 108 111 112 115 116 117 118 121 122 124 129 131 133 134 135 137 141 142 143 145 148 151 152 153 154 155 156 158 159 16...

result:

ok Solution is correct

Test #48:

score: 0
Accepted
time: 45ms
memory: 4692kb

input:

188 90 76051 107731
122 215 227 224 294 165 284 223 178 117 229 279 209 216 298 137 299 217 297 289 300 254 274 125 184 153 116 281 203 216 250 194 117 219 161 123 240 134 167 186 273 166 249 264 196 195 160 168 163 143 256 189 213 173 282 257 255 136 198 298 280 205 231 118 119 217 173 266 285 126 ...

output:

107731
2 3 4 5 7 8 11 12 14 15 17 18 19 20 21 22 23 28 30 31 34 37 41 43 44 51 53 55 56 57 60 61 63 66 68 69 71 72 76 77 82 84 85 87 88 91 92 93 95 99 100 104 108 109 110 112 114 117 118 124 129 130 132 135 136 139 140 141 143 144 148 149 150 152 158 160 163 164 165 171 172 173 176 177 178 180 181 1...

result:

ok Solution is correct

Test #49:

score: 0
Accepted
time: 226ms
memory: 6668kb

input:

452 255 92397 101760
142 248 221 261 80 125 205 233 128 97 268 208 204 162 88 77 107 197 200 124 292 285 194 151 229 200 88 143 178 237 269 188 118 93 228 193 187 140 195 112 86 173 298 152 162 210 118 230 291 206 95 249 242 87 238 144 164 127 190 121 209 161 110 76 281 168 187 140 133 121 80 115 13...

output:

101760
2 3 4 7 8 11 12 13 18 19 21 22 23 25 26 29 30 31 32 35 36 37 39 43 46 48 49 50 52 53 55 59 61 65 67 74 78 79 80 84 85 87 88 92 95 98 99 100 102 104 107 111 112 118 120 121 123 125 126 127 128 129 130 132 135 136 138 143 149 150 151 152 153 154 155 156 158 160 161 163 164 165 167 169 171 176 1...

result:

ok Solution is correct

Test #50:

score: 0
Accepted
time: 62ms
memory: 4728kb

input:

226 90 41735 76486
166 107 126 144 205 149 127 290 104 97 188 150 231 135 273 75 116 148 204 211 141 289 85 199 146 129 300 201 189 114 163 214 288 87 152 80 187 222 110 212 100 123 131 157 156 132 267 117 215 270 155 120 293 154 222 148 122 89 90 231 200 86 131 95 117 267 95 244 182 146 228 143 96 ...

output:

76486
5 8 13 15 19 20 22 27 32 33 38 40 47 49 50 53 55 60 66 68 71 76 79 81 82 83 84 86 88 90 91 93 98 100 101 102 105 109 115 116 117 120 121 122 123 125 128 131 134 137 144 145 146 147 148 150 151 152 155 157 161 163 165 167 170 171 172 173 175 177 185 187 188 190 194 196 197 198 202 203 205 213 2...

result:

ok Solution is correct

Test #51:

score: 0
Accepted
time: 291ms
memory: 7236kb

input:

526 265 48517 66879
132 251 155 183 250 127 234 169 239 244 142 60 218 211 91 154 94 213 178 230 135 153 286 68 216 73 205 150 175 276 294 183 260 89 129 223 67 233 256 141 94 254 245 194 147 196 203 154 81 202 105 207 229 193 83 145 202 91 98 268 158 222 253 240 230 266 124 136 272 235 56 101 176 2...

output:

66879
2 4 5 7 8 9 10 13 14 18 19 20 23 25 27 29 30 31 32 33 36 38 39 42 43 44 46 47 50 52 53 54 57 60 62 63 64 65 66 69 70 73 74 79 81 82 83 84 85 86 88 89 90 95 97 98 102 103 104 106 110 112 113 114 115 116 117 118 120 121 122 123 128 130 132 133 134 139 140 141 143 149 151 154 156 159 160 162 163 ...

result:

ok Solution is correct

Test #52:

score: 0
Accepted
time: 75ms
memory: 5268kb

input:

263 110 18725 152805
201 216 162 115 184 143 93 148 130 218 41 104 218 215 157 151 102 82 111 93 74 279 195 122 198 214 261 165 91 227 231 63 273 168 173 129 125 77 170 76 131 284 173 260 118 197 140 100 162 217 177 228 241 242 222 42 224 68 223 280 109 195 133 124 97 247 248 246 51 170 168 114 285 ...

output:

152805
1 2 10 13 14 22 23 25 26 27 30 31 33 42 44 46 50 52 53 54 55 57 59 60 62 66 67 68 73 75 81 82 86 87 90 97 100 105 108 112 115 118 119 120 121 122 129 130 135 136 137 138 140 141 142 146 148 149 152 155 156 158 159 160 162 165 166 167 169 173 179 181 182 183 184 185 187 188 191 192 194 199 200...

result:

ok Solution is correct

Test #53:

score: 0
Accepted
time: 361ms
memory: 7776kb

input:

600 302 67360 134304
144 288 170 276 268 7 118 50 82 222 143 111 171 44 274 107 251 238 101 206 5 261 26 90 47 47 260 236 30 284 227 292 227 262 169 125 157 205 258 71 130 283 71 160 68 229 59 217 12 198 3 263 289 58 120 294 38 83 211 32 215 28 286 149 267 242 166 181 281 231 75 179 60 37 150 152 12...

output:

134304
2 3 4 5 10 13 15 17 18 20 22 27 28 30 31 32 33 34 35 37 38 39 42 44 46 48 50 52 53 56 59 61 63 64 65 66 67 68 69 70 72 75 76 82 84 85 86 87 88 89 90 91 93 94 95 97 98 99 101 102 103 105 107 109 113 116 117 119 120 124 126 127 128 131 132 134 135 137 140 143 146 153 154 155 156 157 158 159 161...

result:

ok Solution is correct

Test #54:

score: 0
Accepted
time: 93ms
memory: 5376kb

input:

301 136 168488 173745
62 237 231 52 96 124 274 118 139 96 101 121 183 152 295 159 147 278 97 25 212 57 3 175 267 242 120 295 51 81 258 178 3 69 66 170 124 268 23 205 278 103 210 165 168 216 227 31 239 264 182 140 206 266 53 263 17 232 234 85 183 167 94 210 116 190 196 114 273 298 241 39 132 82 92 17...

output:

173745
2 3 7 13 15 18 21 24 25 26 28 31 32 36 38 40 41 43 44 45 46 47 49 50 51 53 54 56 58 59 61 62 64 66 67 69 70 71 76 77 78 79 80 83 84 86 87 92 93 97 101 108 109 110 114 115 116 120 125 128 129 131 132 133 139 140 141 148 150 151 153 162 163 164 168 171 176 178 183 185 186 188 189 190 193 194 19...

result:

ok Solution is correct

Extra Test:

score: 0
Extra Test Passed