Submission #63539454


Source Code Expand

#include <bits/stdc++.h>

using namespace std;

const int N = 20, M = 2e5 + 5;

int n, m, f[N][(1 << N) + 5], ans, num[M];
char a[N][M];

int main() {
  ios::sync_with_stdio(0);
  cin.tie(0), cout.tie(0);
  cin >> m >> n;
  ans = n * m;
  for (int i = 1; i <= m; ++i) {
    for (int j = 1; j <= n; ++j) {
      cin >> a[j][i];
    }
  }
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= m; ++j) {
      num[j] = (num[j] << 1) + a[i][j] - '0';
    }
  }
  for (int i = 1; i <= m; ++i) {
    f[0][num[i]]++;
  }
  for (int i = 0; i < n; ++i) {
    for (int j = n; j; --j) {
      for (int k = 0; k < 1 << n; ++k) {
        f[j][k] += f[j - 1][k ^ (1 << i)];
      }
    }
  }
  for (int i = 0; i < 1 << n; ++i) {
    int sum = 0;
    for (int j = 0; j <= n; ++j) {
      sum += f[j][i] * min(j, n - j);
    }
    ans = min(ans, sum);
  }
  cout << ans;
  return 0;
}

Submission Info

Submission Time
Task G - Flip Row or Col
User ChickyHas
Language C++ 17 (gcc 12.2)
Score 600
Code Size 915 Byte
Status AC
Exec Time 109 ms
Memory 27468 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 600 / 600
Status
AC × 3
AC × 35
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3456 KiB
00_sample_01.txt AC 1 ms 3612 KiB
00_sample_02.txt AC 1 ms 3520 KiB
01_test_00.txt AC 1 ms 3568 KiB
01_test_01.txt AC 1 ms 3440 KiB
01_test_02.txt AC 1 ms 3508 KiB
01_test_03.txt AC 7 ms 4464 KiB
01_test_04.txt AC 5 ms 4476 KiB
01_test_05.txt AC 10 ms 5136 KiB
01_test_06.txt AC 61 ms 16280 KiB
01_test_07.txt AC 105 ms 26840 KiB
01_test_08.txt AC 61 ms 16600 KiB
01_test_09.txt AC 108 ms 27468 KiB
01_test_10.txt AC 108 ms 27340 KiB
01_test_11.txt AC 109 ms 27212 KiB
01_test_12.txt AC 108 ms 27348 KiB
01_test_13.txt AC 108 ms 27328 KiB
01_test_14.txt AC 109 ms 27232 KiB
01_test_15.txt AC 61 ms 15968 KiB
01_test_16.txt AC 11 ms 5404 KiB
01_test_17.txt AC 15 ms 5964 KiB
01_test_18.txt AC 108 ms 26300 KiB
01_test_19.txt AC 108 ms 26360 KiB
01_test_20.txt AC 107 ms 26288 KiB
01_test_21.txt AC 108 ms 26268 KiB
01_test_22.txt AC 109 ms 26364 KiB
01_test_23.txt AC 107 ms 26328 KiB
01_test_24.txt AC 108 ms 26472 KiB
01_test_25.txt AC 108 ms 26512 KiB
01_test_26.txt AC 108 ms 26460 KiB
01_test_27.txt AC 1 ms 3524 KiB
01_test_28.txt AC 1 ms 3460 KiB
01_test_29.txt AC 3 ms 4504 KiB
01_test_30.txt AC 78 ms 22024 KiB
01_test_31.txt AC 107 ms 26256 KiB