QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#375863#4088. 총 쏘기duongnc00012 3266ms148072kbC++206.6kb2024-04-03 16:39:502024-04-03 16:39:50

Judging History

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

  • [2024-04-03 16:39:50]
  • 评测
  • 测评结果:12
  • 用时:3266ms
  • 内存:148072kb
  • [2024-04-03 16:39:50]
  • 提交

answer

/*
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("avx2,fma,bmi,bmi2,sse4.2,popcnt,lzcnt")
*/

#include <bits/stdc++.h>
#define taskname ""
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define i64 long long
#define pb push_back
#define ff first
#define ss second
#define isz(x) (int)x.size()
using namespace std;

const int mxN = 2e5 + 5;
const int mod = 1e9 + 7;
const i64 oo = 1e18;

template<class T>
struct fenwick_tree_max{
    int n;
    vector<T> data;
    T T_id;
    fenwick_tree_max(int n, T init, T T_id = numeric_limits<T>::min()): fenwick_tree_max(vector<T>(n, init), T_id){ }
    fenwick_tree_max(const vector<T> &v, T T_id = numeric_limits<T>::min()): n((int)v.size()), data(v), T_id(T_id){
        for(auto i = 1; i <= n; ++ i) if(i + (i & -i) <= n) data[i + (i & -i) - 1] = max(data[i + (i & -i) - 1], data[i - 1]);
    }
    // O(log n)
    void update(int p, T x){
        assert(0 <= p && p < n);
        for(++ p; p <= n; p += p & -p) data[p - 1] = max(data[p - 1], x);
    }
    // O(log n)
    T pref(int r) const{
        T s = T_id;
        for(; r > 0; r -= r & -r) s = max(s, data[r - 1]);
        return s;
    }
    // pred(sum[0, r)) is T, T, ..., T, F, F, ..., F, returns max r with T
    // O(log n)
    int max_pref(auto pred) const{
        assert(pred(T_id));
        int p = 0;
        T pref = T_id;
        for(auto i = __lg(n + 1); i >= 0; -- i) if(p + (1 << i) <= n && pred(max(pref, data[p + (1 << i) - 1]))){
            pref = max(pref, data[p + (1 << i) - 1]);
            p += 1 << i;
        }
        return p;
    }
};

const int MAXT = 270000;

struct seg2
{
    pair<int, int> tree[MAXT];
    int lim;
    void init(int n)
    {
        fill(tree, tree + MAXT, pair<int, int>(-1e9, -1e9));
        for (lim = 1; lim <= n; lim <<= 1);
    }
    void upd(int x, pair<int, int> v)
    {
        x += lim;
        tree[x] = v;
        while (x > 1)
        {
            x >>= 1;
            tree[x] = max(tree[2 * x], tree[2 * x + 1]);
        }
    }
    pair<int, int> query(int s, int e)
    {
        s += lim;
        e += lim;
        pair<int, int> ret(-1e9, -1e9);
        while (s < e)
        {
            if (s % 2 == 1) ret = max(ret, tree[s++]);
            if (e % 2 == 0) ret = max(ret, tree[e--]);
            s >>= 1, e >>= 1;
        }
        if (s == e) ret = max(ret, tree[s]);
        return ret;
    }
} seg2;

vector<pair<int, int>> min_shooting_buildings(vector<int> a) {
    int n = isz(a);
    for (int &val : a) --val;
    vector<int> dp(n);
    fenwick_tree_max<int> fenw(n, -1e9);
    vector<vector<int>> dpval, N(n);
    for (int i = n - 1; i >= 0; --i) {
        int val = max(0, fenw.pref(a[i] + 1) + 1);
        dp[a[i]] = val; fenw.update(a[i], val);
        if (val >= isz(dpval)) dpval.resize(val + 1);
        dpval[val].emplace_back(i);
    }

    for (int i = 0; i < n; ++i) {
        for (int j = i + 1; j < n; ++j) {
            if (a[i] > a[j]) N[j].emplace_back(i);
        }
    }

    int cntt = 0;
    vector<int> rev = {-1};
    vector<int> ord(n);
    for (auto &v : dpval) {
        for (int val : v) {
            sort(all(N[val]), [&](int x, int y) {
                return ord[x] > ord[y];
            });
        }
        sort(all(v), [&](int x, int y) {
            // cout << x << " " << y << endl;
            for (int i = 0; i < min(isz(N[x]), isz(N[y])); ++i) if (N[x][i] != N[y][i]) {
                return (ord[N[x][i]] < ord[N[y][i]]);
            }
            if (isz(N[x]) != isz(N[y])) return isz(N[x]) < isz(N[y]);
            return (x < y);
        });
        for (int val : v) rev.push_back(val);
        // for (int val : v) cout << val << " ";
        // cout << endl;
        for (int val : v) ord[val] = ++cntt;
    }

    // for (int i = 0; i < n; ++i) cout << i << " " << ord[i] << endl;
    
    vector<int> proc(n);
    iota(all(proc), 0);
    sort(all(proc), [&](int x, int y) { return ord[x] > ord[y]; });
    vector<pair<int, int>> ans;
    vector<int> killed(n);
    int cnt = 0;
    set<int> s, ord_s;
    {
        seg2.init(n);
        int curMax = 0;
        for (int j = 0; j < n; j++)
        {
            seg2.upd(j, pair<int, int>(a[j], j));
            if (curMax < a[j])
            {
                s.insert(j);
                ord_s.insert(ord[j]);
                curMax = a[j];
            }
        }
    }
    auto Erase = [&](int x)
    {
        auto nxt = s.upper_bound(x);
        int y = (nxt == s.end() ? n : *nxt);
        s.erase(x);
        ord_s.erase(ord[x]);
        seg2.upd(x, pair<int, int>(-1e9, x));
        while (y > 0)
        {
            auto val = seg2.query(0, y - 1);
            if (s.find(val.second) != s.end()) break;
            if (val.first < 0) break;
            s.insert(val.second);
            ord_s.insert(ord[val.second]);
            y = val.second;
        }
    };
    while (cnt < n)
    {
        if (isz(s) == 1)
        {
            cnt++;
            int nd = rev[*ord_s.begin()];
            Erase(nd);
            ans.emplace_back(a[nd] + 1, n + 1);
        }
        else
        {
            cnt += 2;
            auto it = ord_s.end();
            int nd1 = rev[*--it];
            int nd2 = rev[*--it];
            Erase(nd1);
            Erase(nd2);
            ans.emplace_back(a[nd1] + 1, a[nd2] + 1);
        }
    }
    return ans;
} 

// void solve() {
//     int n;
//     cin >> n;
//     assert(n <= 500);
//     vector<int> a(n);
//     for (auto &val : a)
//         cin >> val;
//     auto res = min_shooting_buildings(a);
//     cout << res.size() << '\n';
//     for (auto [u, v] : res)
//         cout << u << " " << v << "\n";
// }

// signed main() {

// #ifndef CDuongg
//     if(fopen(taskname".inp", "r"))
//         assert(freopen(taskname".inp", "r", stdin)), assert(freopen(taskname".out", "w", stdout));
// #else
//     freopen("bai3.inp", "r", stdin);
//     freopen("bai3.out", "w", stdout);
//     auto start = chrono::high_resolution_clock::now();
// #endif

//     ios_base::sync_with_stdio(false);
//     cin.tie(nullptr);
//     int t = 1; //cin >> t;
//     while(t--) solve();

// #ifdef CDuongg
//    auto end = chrono::high_resolution_clock::now();
//    cout << "\n"; for(int i = 1; i <= 100; ++i) cout << '=';
//    cout << "\nExecution time: " << chrono::duration_cast<chrono::milliseconds> (end - start).count() << "[ms]" << endl;
//    cout << "Check array size pls sir" << endl;
// #endif

// }

详细

Subtask #1:

score: 0
Time Limit Exceeded

Test #1:

score: 17
Accepted
time: 2ms
memory: 5884kb

input:

8
4 3 8 2 1 7 6 5

output:

4
8 4
3 7
2 6
1 5

result:

ok Correct

Test #2:

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

input:

16
12 16 11 15 10 9 8 4 14 13 7 2 6 5 3 1

output:

10
16 12
11 15
10 14
9 13
8 17
7 4
6 2
5 17
3 17
1 17

result:

ok Correct

Test #3:

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

input:

16
16 13 10 7 6 15 14 12 5 11 4 9 3 8 1 2

output:

9
16 17
13 15
10 14
7 12
6 11
5 9
4 8
3 17
2 1

result:

ok Correct

Test #4:

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

input:

16
16 13 10 15 8 14 12 7 4 11 9 6 1 5 3 2

output:

10
16 17
15 13
14 10
12 8
11 7
9 4
6 17
5 1
3 17
2 17

result:

ok Correct

Test #5:

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

input:

16
14 13 12 11 16 15 8 10 6 9 4 7 3 1 5 2

output:

9
14 16
13 15
12 17
11 17
10 8
6 9
4 7
3 5
2 1

result:

ok Correct

Test #6:

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

input:

16
14 13 16 11 9 15 12 6 5 10 8 7 2 1 4 3

output:

8
16 14
13 15
12 11
10 9
8 6
5 7
4 2
1 3

result:

ok Correct

Test #7:

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

input:

16
15 16 14 12 11 9 7 5 4 13 2 10 1 8 6 3

output:

10
16 15
14 17
12 13
11 17
9 10
7 8
5 6
4 17
2 3
1 17

result:

ok Correct

Test #8:

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

input:

495
492 491 487 481 495 494 493 480 490 478 489 488 477 486 485 475 472 484 483 471 468 482 479 466 465 463 476 461 460 459 474 457 473 455 454 470 469 453 452 467 450 449 464 462 448 447 458 456 443 451 446 442 445 437 436 435 434 433 429 444 427 426 441 440 439 424 423 438 421 419 416 432 413 431 ...

output:

250
495 492
494 491
493 487
490 481
489 480
488 478
486 477
485 496
475 484
472 483
471 482
468 479
466 476
465 474
463 473
461 470
460 469
459 467
457 464
455 462
454 458
453 456
452 496
450 451
449 496
448 496
447 496
443 446
442 445
437 444
436 441
435 440
434 439
433 438
429 432
427 431
426 430
...

result:

ok Correct

Test #9:

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

input:

496
493 491 486 496 481 495 494 492 490 489 473 488 487 472 469 468 485 484 483 464 482 480 463 479 478 477 460 458 476 475 457 456 474 471 455 454 470 453 452 467 449 448 447 446 466 437 465 436 433 432 430 428 462 426 461 425 424 421 420 419 459 417 416 451 410 450 409 408 407 445 405 444 443 442 ...

output:

262
496 493
495 491
494 486
492 481
490 497
489 497
488 473
487 497
485 472
484 469
483 468
482 464
480 497
479 463
478 497
477 497
460 476
458 475
457 474
456 471
455 470
454 467
453 466
452 465
449 462
448 461
447 459
446 451
437 450
436 445
433 444
432 443
430 442
428 441
426 440
425 439
424 438
...

result:

ok Correct

Test #10:

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

input:

497
496 492 490 489 497 495 494 493 488 486 485 484 480 478 491 487 475 483 474 482 471 468 465 464 460 459 481 458 457 456 479 477 455 453 476 473 450 444 443 440 472 439 470 469 435 433 467 432 430 466 429 463 462 428 461 425 420 419 454 418 452 451 416 449 415 413 412 448 409 402 401 400 447 399 ...

output:

259
497 496
495 492
490 494
489 493
488 491
486 487
485 498
484 498
480 483
478 482
475 481
474 479
471 477
468 476
465 473
464 472
460 470
459 469
458 467
457 466
456 463
455 462
453 461
450 454
444 452
443 451
440 449
439 448
435 447
433 446
432 445
430 442
429 441
428 438
425 437
420 436
419 434
...

result:

ok Correct

Test #11:

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

input:

498
496 495 494 493 498 497 489 492 491 488 485 490 487 482 486 484 481 479 478 475 483 474 480 477 476 473 471 464 472 462 470 469 459 458 456 468 467 454 466 453 465 450 448 446 463 461 460 445 440 457 455 437 452 434 451 449 433 432 431 428 427 425 447 444 443 442 422 441 419 439 438 436 418 435 ...

output:

272
496 498
495 497
494 499
493 499
492 489
491 499
488 490
487 485
486 482
484 499
481 483
479 480
478 499
475 477
474 476
473 499
472 471
470 464
469 462
468 459
467 458
466 456
465 454
463 453
461 450
460 448
457 446
455 445
452 440
451 437
449 434
447 433
444 432
443 431
442 428
441 427
439 425
...

result:

ok Correct

Test #12:

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

input:

499
498 496 492 499 497 495 494 493 491 489 486 484 481 490 488 487 478 485 483 474 465 482 464 480 463 461 460 479 477 459 476 456 475 455 473 472 471 470 453 469 452 451 448 447 468 467 446 445 466 439 434 433 462 458 457 454 450 449 432 444 443 430 442 441 428 440 438 437 427 422 436 421 420 418 ...

output:

266
499 498
497 496
495 492
494 500
493 500
491 500
490 489
488 486
487 484
485 481
483 478
482 474
480 465
479 464
477 463
476 461
475 460
473 459
472 456
471 455
470 500
469 453
468 452
467 451
466 448
462 447
458 446
457 445
454 439
450 434
449 433
444 432
443 500
442 430
441 500
440 428
438 500
...

result:

ok Correct

Test #13:

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

input:

500
499 500 495 490 498 489 497 496 488 486 484 482 478 477 476 475 494 493 470 492 491 469 468 467 487 463 458 485 483 481 450 444 442 480 479 441 474 473 472 440 439 438 437 471 436 435 466 434 430 465 429 428 425 424 423 464 422 421 462 461 460 459 419 417 415 457 413 456 455 454 453 452 411 410 ...

output:

254
500 499
498 495
490 497
489 496
488 494
486 493
484 492
482 491
478 487
477 485
476 483
475 481
470 480
469 479
468 474
467 473
463 472
458 471
450 466
444 465
442 464
441 462
440 461
439 460
438 459
437 457
436 456
435 455
434 454
430 453
429 452
428 451
425 449
424 448
423 447
422 446
421 445
...

result:

ok Correct

Test #14:

score: 0
Accepted
time: 368ms
memory: 147588kb

input:

7495
7495 7490 7488 7486 7494 7481 7480 7478 7477 7475 7463 7460 7459 7493 7492 7458 7491 7489 7487 7485 7457 7455 7484 7483 7454 7453 7452 7450 7448 7482 7444 7442 7440 7435 7479 7431 7476 7474 7426 7473 7423 7422 7421 7418 7472 7471 7470 7469 7468 7467 7414 7413 7411 7409 7408 7405 7466 7465 7403 ...

output:

3773
7495 7496
7490 7494
7488 7493
7486 7492
7481 7491
7480 7489
7478 7487
7477 7485
7475 7484
7463 7483
7460 7482
7459 7479
7458 7476
7457 7474
7455 7473
7454 7472
7453 7471
7452 7470
7450 7469
7448 7468
7444 7467
7442 7466
7440 7465
7435 7464
7431 7462
7426 7461
7423 7456
7422 7451
7421 7449
7418 ...

result:

ok Correct

Test #15:

score: 0
Accepted
time: 376ms
memory: 147804kb

input:

7496
7493 7496 7495 7490 7494 7489 7492 7491 7484 7476 7488 7487 7473 7471 7470 7468 7467 7465 7462 7456 7486 7455 7453 7451 7485 7446 7483 7482 7481 7480 7479 7478 7477 7445 7444 7475 7439 7435 7474 7472 7433 7432 7469 7430 7429 7428 7466 7464 7463 7427 7461 7460 7423 7422 7420 7459 7458 7418 7415 ...

output:

3779
7496 7493
7495 7497
7494 7490
7492 7489
7491 7497
7488 7484
7487 7476
7486 7473
7485 7471
7483 7470
7482 7468
7481 7467
7480 7465
7479 7462
7478 7456
7477 7455
7475 7453
7474 7451
7472 7446
7469 7445
7466 7444
7464 7439
7463 7435
7461 7433
7460 7432
7459 7430
7458 7429
7457 7428
7454 7427
7452 ...

result:

ok Correct

Test #16:

score: 0
Accepted
time: 339ms
memory: 147812kb

input:

7497
7493 7490 7489 7488 7487 7486 7497 7485 7496 7482 7495 7481 7480 7479 7478 7494 7492 7477 7470 7491 7469 7484 7483 7476 7468 7475 7466 7462 7474 7461 7473 7458 7457 7455 7472 7454 7453 7450 7447 7471 7445 7467 7465 7444 7464 7443 7442 7440 7463 7439 7460 7459 7438 7437 7435 7430 7456 7452 7427 ...

output:

3790
7493 7497
7490 7496
7489 7495
7488 7494
7487 7492
7486 7491
7485 7498
7482 7484
7481 7483
7480 7498
7479 7498
7478 7498
7477 7498
7470 7476
7469 7475
7468 7474
7466 7473
7462 7472
7461 7471
7458 7467
7457 7465
7455 7464
7454 7463
7453 7460
7450 7459
7447 7456
7445 7452
7444 7451
7443 7449
7442 ...

result:

ok Correct

Test #17:

score: 0
Accepted
time: 351ms
memory: 148044kb

input:

7498
7495 7494 7492 7488 7498 7497 7487 7486 7485 7496 7484 7483 7493 7491 7482 7490 7480 7489 7478 7477 7473 7472 7469 7481 7465 7464 7479 7476 7475 7463 7462 7459 7458 7474 7457 7456 7471 7470 7454 7452 7450 7447 7446 7468 7467 7444 7443 7439 7466 7438 7461 7437 7460 7455 7435 7434 7453 7433 7431 ...

output:

3768
7495 7498
7494 7497
7492 7496
7488 7493
7487 7491
7486 7490
7485 7489
7484 7499
7483 7499
7482 7499
7480 7481
7478 7479
7477 7499
7473 7476
7472 7475
7469 7474
7465 7471
7464 7470
7463 7468
7462 7467
7459 7466
7458 7461
7457 7460
7456 7499
7454 7455
7452 7453
7450 7451
7447 7449
7446 7448
7444 ...

result:

ok Correct

Test #18:

score: 0
Accepted
time: 360ms
memory: 148004kb

input:

7499
7498 7499 7491 7497 7496 7487 7495 7494 7485 7481 7479 7493 7492 7490 7489 7477 7488 7476 7471 7486 7470 7484 7464 7483 7463 7482 7460 7480 7459 7478 7475 7454 7452 7474 7473 7472 7451 7450 7449 7448 7446 7469 7468 7467 7466 7465 7443 7462 7438 7461 7458 7457 7456 7428 7455 7426 7425 7424 7423 ...

output:

3766
7499 7498
7497 7491
7496 7500
7495 7487
7494 7500
7493 7485
7492 7481
7490 7479
7489 7500
7488 7477
7486 7476
7484 7471
7483 7470
7482 7464
7480 7463
7478 7460
7475 7459
7474 7454
7473 7452
7472 7500
7469 7451
7468 7450
7467 7449
7466 7448
7465 7446
7462 7443
7461 7438
7458 7500
7457 7500
7456 ...

result:

ok Correct

Test #19:

score: 0
Accepted
time: 376ms
memory: 148072kb

input:

7500
7500 7498 7499 7497 7492 7490 7488 7485 7481 7479 7476 7471 7496 7470 7469 7495 7494 7466 7493 7491 7460 7489 7459 7458 7456 7455 7487 7453 7486 7450 7447 7484 7446 7443 7440 7436 7435 7483 7482 7430 7424 7423 7422 7480 7421 7478 7418 7416 7477 7413 7475 7411 7474 7473 7472 7468 7410 7467 7408 ...

output:

3788
7500 7501
7499 7498
7497 7501
7496 7492
7495 7490
7494 7488
7493 7485
7491 7481
7489 7479
7487 7476
7486 7471
7484 7470
7483 7469
7482 7466
7480 7460
7478 7459
7477 7458
7475 7456
7474 7455
7473 7453
7472 7450
7468 7447
7467 7446
7465 7443
7464 7440
7463 7436
7462 7435
7461 7430
7457 7424
7454 ...

result:

ok Correct

Test #20:

score: -17
Time Limit Exceeded

input:

99995
99992 99990 99995 99994 99989 99993 99985 99991 99979 99974 99970 99988 99987 99986 99969 99984 99965 99983 99982 99964 99981 99962 99961 99960 99958 99955 99980 99953 99978 99951 99977 99976 99950 99975 99948 99946 99939 99973 99936 99935 99930 99928 99972 99924 99971 99968 99923 99922 99920 ...

output:

Unauthorized output

result:


Subtask #2:

score: 12
Accepted

Test #26:

score: 12
Accepted
time: 1ms
memory: 6180kb

input:

8
5 6 7 1 2 8 3 4

output:

4
8 7
6 5
4 3
2 1

result:

ok Correct

Test #27:

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

input:

16
2 4 5 1 9 10 3 6 14 7 8 11 12 16 13 15

output:

8
16 14
10 9
5 4
2 3
1 8
7 6
13 12
11 15

result:

ok Correct

Test #28:

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

input:

16
2 3 1 8 12 4 5 6 7 14 15 9 10 16 11 13

output:

8
16 15
14 12
8 3
2 7
1 6
5 4
11 10
9 13

result:

ok Correct

Test #29:

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

input:

16
3 5 1 6 8 9 2 11 12 4 7 14 15 10 16 13

output:

8
16 15
14 12
11 9
8 6
5 3
2 1
4 7
10 13

result:

ok Correct

Test #30:

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

input:

16
1 7 2 3 9 11 4 5 6 12 15 8 10 16 13 14

output:

8
16 15
12 11
9 7
6 5
4 3
2 8
10 14
13 1

result:

ok Correct

Test #31:

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

input:

16
6 7 8 1 9 2 3 4 11 12 5 10 13 14 15 16

output:

8
12 11
9 8
7 6
5 4
3 2
1 10
16 15
14 13

result:

ok Correct

Test #32:

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

input:

16
1 6 2 7 8 9 10 13 3 4 5 11 14 12 16 15

output:

8
16 14
13 10
9 8
7 6
5 4
3 2
12 11
15 1

result:

ok Correct

Test #33:

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

input:

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

output:

248
494 493
492 490
489 487
486 485
482 481
479 477
476 474
473 472
470 468
460 459
458 457
456 455
454 452
447 446
445 444
443 442
440 436
435 434
433 432
430 429
426 424
423 422
421 420
419 418
411 409
408 407
405 399
398 397
396 392
391 390
389 383
381 380
379 378
376 374
373 372
370 368
367 365
...

result:

ok Correct

Test #34:

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

input:

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

output:

248
496 494
493 492
489 488
487 486
485 484
482 480
478 477
476 475
472 471
469 467
465 464
463 462
461 459
457 456
455 453
452 450
449 448
445 442
438 436
435 434
433 429
427 424
421 417
416 415
414 413
410 408
406 404
403 399
396 394
393 392
391 390
389 386
385 379
378 375
373 372
371 370
369 366
...

result:

ok Correct

Test #35:

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

input:

497
6 1 2 10 11 3 12 4 15 5 7 8 16 17 18 19 21 25 26 30 31 9 32 13 14 20 33 35 37 40 41 43 22 45 23 46 24 27 49 50 28 52 53 29 54 58 59 34 36 38 39 42 44 47 61 48 51 63 55 67 68 69 56 57 72 60 62 77 78 79 80 64 65 82 85 87 88 66 89 91 98 102 70 104 71 111 112 113 117 118 120 73 125 129 130 74 75 131...

output:

249
497 496
495 494
492 490
489 488
486 485
483 482
481 479
478 475
473 472
469 465
464 463
458 457
456 453
452 451
449 447
445 443
440 439
437 434
433 432
431 430
429 427
424 420
416 414
413 412
411 410
405 401
400 397
394 392
391 389
387 386
385 384
383 376
375 373
372 371
370 368
367 366
364 363
...

result:

ok Correct

Test #36:

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

input:

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

output:

249
498 497
495 494
493 491
490 488
487 486
485 484
482 481
480 478
477 475
473 472
470 469
467 462
461 456
455 448
447 446
445 444
443 441
440 432
429 427
424 423
419 418
417 414
411 410
407 405
404 403
402 399
397 396
391 390
388 386
384 383
381 378
375 370
369 366
364 362
360 359
356 355
354 353
...

result:

ok Correct

Test #37:

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

input:

499
5 7 11 12 13 1 17 18 20 22 24 2 3 25 26 27 4 29 31 6 32 33 8 9 10 14 15 34 35 16 19 21 23 28 41 30 36 37 42 45 38 39 46 49 40 50 51 43 52 44 47 48 54 59 53 65 55 67 68 71 56 57 74 75 78 79 58 81 86 87 88 89 60 91 61 98 99 100 102 103 112 62 113 63 114 64 115 116 66 117 69 120 70 121 72 122 124 7...

output:

250
499 498
497 496
495 494
493 492
490 485
484 483
482 480
478 477
476 475
474 471
470 469
468 467
465 463
461 459
456 454
453 450
449 446
444 442
441 440
439 438
436 432
431 430
429 428
427 426
425 422
421 415
414 413
412 408
406 405
404 402
398 397
389 387
386 384
383 381
380 379
378 377
373 371
...

result:

ok Correct

Test #38:

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

input:

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

output:

250
500 499
498 496
495 494
493 492
489 486
483 482
480 477
476 475
474 473
472 471
469 468
466 465
464 463
462 461
456 455
453 452
451 450
449 448
445 441
439 438
437 436
435 432
431 430
427 425
424 423
422 421
420 417
414 410
409 407
405 404
403 400
397 395
394 393
392 390
385 382
381 374
370 369
...

result:

ok Correct

Test #39:

score: 0
Accepted
time: 28ms
memory: 8216kb

input:

7495
1 3 5 7 8 2 10 4 11 13 6 14 17 9 21 12 15 23 25 26 16 18 31 19 20 32 35 36 37 42 22 45 46 24 27 28 47 48 49 29 51 52 58 60 30 33 34 38 62 63 39 40 64 65 66 70 72 73 41 74 43 75 77 44 50 53 78 79 54 81 82 55 56 83 57 87 88 89 93 59 61 67 68 97 69 100 102 107 108 110 112 113 118 119 120 71 124 12...

output:

3748
7494 7493
7492 7491
7489 7488
7487 7486
7485 7484
7483 7482
7479 7476
7475 7474
7473 7468
7465 7464
7462 7456
7455 7454
7453 7452
7451 7449
7445 7441
7440 7439
7438 7436
7435 7433
7431 7430
7428 7427
7425 7421
7419 7408
7405 7404
7403 7402
7401 7399
7396 7395
7394 7392
7391 7389
7386 7383
7382 ...

result:

ok Correct

Test #40:

score: 0
Accepted
time: 24ms
memory: 8288kb

input:

7496
4 8 9 14 16 1 19 2 3 5 6 20 21 23 7 25 32 10 33 34 35 36 38 11 39 12 40 13 15 17 43 45 46 47 18 48 51 54 22 58 61 24 62 67 68 26 27 28 72 29 73 75 76 80 30 81 31 37 41 42 82 83 44 85 49 87 50 91 100 52 53 55 56 57 101 103 104 105 106 59 107 109 112 60 63 64 114 122 65 124 66 126 69 70 71 74 127...

output:

3748
7495 7494
7493 7492
7490 7488
7486 7485
7484 7482
7481 7479
7476 7475
7474 7472
7470 7468
7467 7466
7465 7463
7462 7460
7459 7458
7456 7455
7452 7451
7449 7446
7443 7439
7438 7436
7433 7431
7430 7429
7428 7427
7426 7425
7424 7421
7418 7413
7411 7410
7407 7404
7403 7397
7395 7387
7386 7385
7384 ...

result:

ok Correct

Test #41:

score: 0
Accepted
time: 28ms
memory: 7940kb

input:

7497
4 1 7 11 14 15 18 22 2 23 3 5 26 34 35 6 8 36 38 9 10 12 13 39 40 43 44 45 16 17 47 48 49 19 50 57 59 60 20 21 24 25 62 27 28 64 67 68 29 30 31 71 76 77 79 32 81 33 82 84 85 86 87 88 37 41 90 92 93 95 42 96 97 103 105 46 51 52 53 107 108 109 110 54 55 111 112 113 56 115 58 61 63 117 65 118 119 ...

output:

3749
7496 7494
7492 7491
7490 7488
7487 7485
7483 7482
7481 7480
7479 7475
7469 7467
7466 7464
7461 7458
7455 7454
7452 7451
7449 7447
7445 7444
7443 7442
7440 7438
7437 7436
7435 7434
7433 7432
7429 7428
7427 7425
7424 7418
7417 7416
7415 7412
7410 7409
7404 7402
7401 7396
7394 7392
7390 7389
7388 ...

result:

ok Correct

Test #42:

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

input:

7498
4 5 6 1 9 2 3 7 8 13 10 16 17 20 21 25 11 26 28 12 14 15 18 19 22 23 24 30 31 27 33 29 32 39 48 34 35 49 36 51 37 54 38 40 55 41 56 42 43 57 58 59 44 61 64 65 45 71 46 47 50 52 72 53 73 77 78 60 62 88 92 93 63 66 95 99 67 68 100 69 70 74 75 101 76 79 102 103 106 80 81 109 115 116 117 82 120 124...

output:

3749
7498 7497
7495 7494
7493 7492
7491 7490
7489 7488
7487 7485
7484 7481
7480 7478
7477 7476
7475 7471
7470 7468
7461 7460
7457 7455
7453 7452
7451 7448
7447 7446
7441 7440
7439 7438
7437 7434
7433 7432
7430 7428
7425 7424
7423 7421
7420 7416
7415 7414
7412 7409
7408 7407
7403 7402
7399 7397
7394 ...

result:

ok Correct

Test #43:

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

input:

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

output:

3750
7499 7497
7496 7495
7494 7493
7491 7490
7489 7488
7486 7479
7478 7477
7476 7473
7472 7470
7469 7464
7463 7460
7459 7456
7452 7450
7449 7447
7446 7445
7442 7441
7440 7439
7434 7432
7430 7429
7427 7425
7423 7420
7417 7413
7412 7411
7410 7409
7407 7406
7405 7398
7397 7396
7394 7393
7392 7391
7390 ...

result:

ok Correct

Test #44:

score: 0
Accepted
time: 28ms
memory: 8228kb

input:

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

output:

3750
7500 7499
7497 7496
7494 7493
7492 7491
7489 7488
7487 7486
7483 7481
7479 7478
7477 7476
7475 7472
7471 7470
7468 7467
7466 7462
7461 7460
7459 7457
7455 7454
7450 7447
7444 7443
7442 7439
7438 7435
7433 7431
7429 7428
7427 7425
7422 7421
7420 7419
7417 7411
7409 7408
7407 7406
7405 7404
7402 ...

result:

ok Correct

Test #45:

score: 0
Accepted
time: 3157ms
memory: 89664kb

input:

99995
4 5 6 8 10 1 11 2 3 14 16 19 21 7 22 9 24 26 27 12 29 31 35 43 13 47 15 17 48 18 51 20 23 25 28 52 53 55 30 56 58 32 60 61 33 34 36 63 37 38 64 65 39 66 70 40 72 77 86 88 89 41 42 44 45 46 91 49 93 94 95 98 100 50 101 54 102 103 57 59 62 67 104 108 68 112 116 117 118 119 69 120 71 73 74 123 12...

output:

49998
99995 99994
99992 99991
99990 99989
99988 99987
99986 99985
99982 99980
99978 99977
99973 99971
99970 99969
99968 99966
99963 99962
99959 99957
99955 99954
99953 99952
99951 99950
99949 99943
99942 99938
99934 99931
99929 99928
99925 99924
99921 99918
99914 99913
99911 99910
99909 99908
99906 ...

result:

ok Correct

Test #46:

score: 0
Accepted
time: 3170ms
memory: 81360kb

input:

99996
4 1 2 5 7 3 6 10 8 9 16 17 18 11 20 12 13 14 21 15 27 28 30 31 32 19 22 23 33 37 38 40 41 24 25 42 43 44 47 26 29 48 34 35 50 36 39 53 45 59 46 62 49 51 63 69 70 52 54 73 55 75 82 83 89 96 56 97 98 99 57 100 58 101 107 60 109 110 112 61 64 65 66 113 114 67 116 120 122 130 68 131 71 137 72 74 7...

output:

49998
99996 99995
99993 99992
99991 99990
99987 99986
99985 99983
99979 99976
99974 99973
99972 99969
99964 99963
99961 99959
99958 99957
99956 99955
99952 99948
99947 99945
99944 99942
99941 99936
99935 99933
99932 99927
99926 99925
99924 99922
99921 99919
99918 99916
99915 99913
99910 99908
99907 ...

result:

ok Correct

Test #47:

score: 0
Accepted
time: 3266ms
memory: 129916kb

input:

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

output:

49999
99996 99995
99991 99988
99987 99985
99983 99982
99981 99980
99978 99977
99975 99974
99972 99971
99966 99965
99963 99961
99960 99959
99958 99956
99954 99952
99950 99948
99946 99945
99944 99942
99940 99939
99938 99937
99936 99935
99934 99933
99931 99928
99922 99921
99920 99917
99915 99914
99913 ...

result:

ok Correct

Test #48:

score: 0
Accepted
time: 3159ms
memory: 88416kb

input:

99998
2 1 4 6 3 5 8 12 7 17 9 18 20 22 25 26 28 10 34 35 11 13 40 14 43 46 15 16 19 47 48 21 51 52 53 23 55 24 57 27 29 30 31 59 32 63 65 66 68 33 69 36 70 71 37 72 74 38 39 75 41 77 42 79 81 83 85 86 89 44 90 91 45 49 92 95 96 98 50 100 104 54 56 58 107 109 110 60 61 111 113 62 115 64 118 123 125 6...

output:

49999
99998 99997
99994 99993
99992 99990
99989 99988
99987 99985
99984 99983
99982 99981
99979 99977
99976 99975
99974 99972
99971 99965
99964 99963
99962 99959
99956 99954
99952 99951
99949 99948
99943 99942
99939 99936
99934 99932
99931 99930
99929 99928
99925 99924
99919 99918
99917 99915
99914 ...

result:

ok Correct

Test #49:

score: 0
Accepted
time: 3242ms
memory: 140652kb

input:

99999
2 4 8 1 9 10 3 13 5 14 6 7 18 11 12 29 32 34 15 41 42 16 17 19 20 21 43 47 54 22 23 24 56 25 26 57 27 58 59 28 30 61 31 63 33 35 36 65 66 37 38 69 70 39 40 74 44 75 45 46 48 49 50 51 52 53 55 60 76 62 64 77 78 79 67 81 68 85 87 88 93 94 98 102 105 110 112 113 114 115 71 116 72 118 73 121 122 1...

output:

50000
99999 99996
99995 99993
99991 99990
99989 99987
99986 99985
99983 99979
99978 99977
99975 99973
99972 99970
99968 99965
99964 99963
99958 99956
99955 99953
99952 99950
99949 99948
99947 99946
99943 99939
99937 99932
99931 99930
99927 99925
99924 99923
99919 99918
99915 99914
99913 99912
99907 ...

result:

ok Correct

Test #50:

score: 0
Accepted
time: 3150ms
memory: 89212kb

input:

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

output:

50000
100000 99999
99998 99997
99994 99992
99989 99987
99982 99981
99978 99973
99972 99971
99967 99966
99965 99964
99963 99960
99959 99958
99956 99954
99950 99948
99947 99946
99944 99943
99942 99941
99940 99935
99934 99932
99931 99930
99929 99926
99923 99918
99917 99914
99913 99911
99910 99909
99907...

result:

ok Correct

Subtask #3:

score: 0
Runtime Error

Test #51:

score: 0
Runtime Error

input:

1
1

output:

Unauthorized output

result:


Subtask #4:

score: 0
Skipped

Dependency #3:

0%

Subtask #5:

score: 0
Skipped

Dependency #4:

0%

Subtask #6:

score: 0
Skipped

Dependency #5:

0%

Subtask #7:

score: 0
Skipped

Dependency #1:

0%