Submission #52119403


Source Code Expand

#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for(int i=0;i<n;i++)

static constexpr size_t bitsize = 16000; // 4000000の約数
bitset<bitsize> bit[2000];
int B = 4000000 / bitsize; // N * M = 4000000

int main() { 
    cin.tie(0);
    ios::sync_with_stdio(false);

    int n, m;
    cin >> n >> m;
    vector a(n, vector(m, 0));
    rep(i, n) rep(j, m) cin >> a[i][j];

    int id = 0;
    vector pari(n, vector(n, 0));
    rep(j, m) {
        vector<vector<int>> v(1000); // max(A) = 1000
        rep(i, n) v[a[i][j]].push_back(i);
        rep(i, 1000) {
            int sz = v[i].size();
            if(sz >= B) {
                for(int e : v[i]) bit[e].set(id);
                id ++;
            } else if(sz > 1) {
                rep(x, sz) for(int y = x + 1; y < sz; y ++) {
                    pari[v[i][x]][v[i][y]] ^= 1;
                }
            }
        }
    }
    int ans = 0;
    rep(i, n) for(int j = i + 1; j < n; j ++) {
        if(((bit[i] & bit[j]).count() & 1) ^ pari[i][j]) ans ++;
    }
    cout << ans << endl;

    return 0;
}

Submission Info

Submission Time
Task F - Oddly Similar
User shinchan
Language C++ 20 (gcc 12.2)
Score 550
Code Size 1214 Byte
Status AC
Exec Time 590 ms
Memory 39000 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 550 / 550
Status
AC × 2
AC × 53
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 02_maximum_00.txt, 02_maximum_01.txt, 02_maximum_02.txt, 02_maximum_03.txt, 02_maximum_04.txt, 02_maximum_05.txt, 02_maximum_06.txt, 02_maximum_07.txt, 02_maximum_08.txt, 02_maximum_09.txt, 02_maximum_10.txt, 02_maximum_11.txt, 02_maximum_12.txt, 02_maximum_13.txt, 02_maximum_14.txt, 02_maximum_15.txt, 02_maximum_16.txt, 02_maximum_17.txt, 02_maximum_18.txt, 02_maximum_19.txt, 02_maximum_20.txt, 02_maximum_21.txt, 02_maximum_22.txt, 02_maximum_23.txt, 02_maximum_24.txt, 02_maximum_25.txt, 02_maximum_26.txt, 02_maximum_27.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3396 KiB
00_sample_01.txt AC 1 ms 3548 KiB
01_random_00.txt AC 32 ms 5212 KiB
01_random_01.txt AC 468 ms 32392 KiB
01_random_02.txt AC 26 ms 5136 KiB
01_random_03.txt AC 26 ms 4656 KiB
01_random_04.txt AC 351 ms 24372 KiB
01_random_05.txt AC 118 ms 16212 KiB
01_random_06.txt AC 16 ms 4196 KiB
01_random_07.txt AC 223 ms 26056 KiB
01_random_08.txt AC 106 ms 15372 KiB
01_random_09.txt AC 36 ms 7252 KiB
01_random_10.txt AC 209 ms 15536 KiB
01_random_11.txt AC 132 ms 12232 KiB
01_random_12.txt AC 133 ms 10748 KiB
01_random_13.txt AC 38 ms 5244 KiB
01_random_14.txt AC 22 ms 4512 KiB
01_random_15.txt AC 41 ms 5364 KiB
01_random_16.txt AC 16 ms 4356 KiB
01_random_17.txt AC 421 ms 32788 KiB
01_random_18.txt AC 34 ms 5044 KiB
01_random_19.txt AC 90 ms 7884 KiB
01_random_20.txt AC 37 ms 7288 KiB
01_random_21.txt AC 13 ms 4164 KiB
01_random_22.txt AC 113 ms 15708 KiB
02_maximum_00.txt AC 513 ms 34984 KiB
02_maximum_01.txt AC 504 ms 35064 KiB
02_maximum_02.txt AC 507 ms 34976 KiB
02_maximum_03.txt AC 510 ms 34900 KiB
02_maximum_04.txt AC 505 ms 35020 KiB
02_maximum_05.txt AC 363 ms 38424 KiB
02_maximum_06.txt AC 363 ms 38424 KiB
02_maximum_07.txt AC 352 ms 38412 KiB
02_maximum_08.txt AC 364 ms 39000 KiB
02_maximum_09.txt AC 362 ms 38804 KiB
02_maximum_10.txt AC 363 ms 38460 KiB
02_maximum_11.txt AC 361 ms 38520 KiB
02_maximum_12.txt AC 362 ms 38500 KiB
02_maximum_13.txt AC 365 ms 38960 KiB
02_maximum_14.txt AC 363 ms 38344 KiB
02_maximum_15.txt AC 365 ms 38884 KiB
02_maximum_16.txt AC 360 ms 38944 KiB
02_maximum_17.txt AC 354 ms 38772 KiB
02_maximum_18.txt AC 546 ms 38816 KiB
02_maximum_19.txt AC 554 ms 38888 KiB
02_maximum_20.txt AC 551 ms 38972 KiB
02_maximum_21.txt AC 509 ms 34980 KiB
02_maximum_22.txt AC 575 ms 34876 KiB
02_maximum_23.txt AC 590 ms 38820 KiB
02_maximum_24.txt AC 509 ms 34880 KiB
02_maximum_25.txt AC 540 ms 34976 KiB
02_maximum_26.txt AC 543 ms 34920 KiB
02_maximum_27.txt AC 553 ms 38888 KiB