Submission #65429280


Source Code Expand

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

typedef long long ll;
typedef unsigned long long ull; 
typedef long double ld;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<ll> vl;
typedef vector<vl> vvl;

#define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
#define REP(i, k, n) for (int(i) = (k); (i) <= (n); ++(i))
#define REPR(i, k, n) for (int(i) = (k); (i) >= (n); --(i))
#define FORR(x, arr) for (auto &x : arr)
#define FORR2(x, y, arr) for (auto &[x, y] : arr)
#define ALL(a) (a.begin()), (a.end())
#define RALL(a) (a.rbegin()), (a.rend())
#define REVERSE(v) reverse(ALL(v))
#define SZ(x) (int)(x).size()
#define fi first
#define se second
#define debug(x) cerr << #x << " = " << (x) << endl

const int MOD1 = 1e9 + 7;
const int INF = 1e9;
const ll LLINF = 1e18;
const ll MOD2 = 998244353;

void solve() {
    int n; cin >> n;
    vector<string> s(n), t(n);
    FOR(i, n) cin >> s[i];
    FOR(i, n) cin >> t[i];
    auto rotate = [&]() -> void {
        vector<string> tmp(n, string(n, ' '));
        FOR(i, n) {
            FOR(j, n) {
                tmp[j][n-1-i] = s[i][j];
            }
        }
        s = tmp;
    };
    int ans = INF;
    FOR(x, 4) {
        int cnt = x;
        FOR(i, n) {
            FOR(j, n) {
                cnt += (s[i][j] != t[i][j]);
            }
        }
        ans = min(ans, cnt);
        rotate();
        //FORR(i, s) cout << i << endl; cout << endl;
    }
    cout << ans << endl;
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

#if SINGLE_TEST
    solve();
#else
    int t;
    cin >> t;
    while (t--) {
        solve();
    }
#endif

    return 0;
}

Submission Info

Submission Time
Task B - Grid Rotation
User vidfurlan
Language C++ 20 (gcc 12.2)
Score 250
Code Size 1803 Byte
Status AC
Exec Time 1 ms
Memory 3700 KiB

Compile Error

Main.cpp: In function ‘void solve()’:
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:36:5: note: in expansion of macro ‘FOR’
   36 |     FOR(i, n) cin >> s[i];
      |     ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:36:5: note: in expansion of macro ‘FOR’
   36 |     FOR(i, n) cin >> s[i];
      |     ^~~
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:37:5: note: in expansion of macro ‘FOR’
   37 |     FOR(i, n) cin >> t[i];
      |     ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:37:5: note: in expansion of macro ‘FOR’
   37 |     FOR(i, n) cin >> t[i];
      |     ^~~
Main.cpp: In lambda function:
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:40:9: note: in expansion of macro ‘FOR’
   40 |         FOR(i, n) {
      |         ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:40:9: note: in expansion of macro ‘FOR’
   40 |         FOR(i, n) {
      |         ^~~
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘j’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:41:13: note: in expansion of macro ‘FOR’
   41 |             FOR(j, n) {
      |             ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:41:13: note: in expansion of macro ‘FOR’
   41 |             FOR(j, n) {
      |             ^~~
Main.cpp: In function ‘void solve()’:
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘x’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:48:5: note: in expansion of macro ‘FOR’
   48 |     FOR(x, 4) {
      |     ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:48:5: note: in expansion of macro ‘FOR’
   48 |     FOR(x, 4) {
      |     ^~~
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘i’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:50:9: note: in expansion of macro ‘FOR’
   50 |         FOR(i, n) {
      |         ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:50:9: note: in expansion of macro ‘FOR’
   50 |         FOR(i, n) {
      |         ^~~
Main.cpp:15:27: warning: unnecessary parentheses in declaration of ‘j’ [-Wparentheses]
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:51:13: note: in expansion of macro ‘FOR’
   51 |             FOR(j, n) {
      |             ^~~
Main.cpp:15:27: note: remove parentheses
   15 | #define FOR(i, n) for (int(i) = 0; (i) < (n); ++(i))
      |                           ^~~
Main.cpp:51:13: note: in expansion of macro ‘FOR’
   51 |             FOR(j, n) {
      |             ^~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 250 / 250
Status
AC × 2
AC × 21
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
random_01.txt AC 1 ms 3532 KiB
random_02.txt AC 1 ms 3400 KiB
random_03.txt AC 1 ms 3404 KiB
random_04.txt AC 1 ms 3544 KiB
random_05.txt AC 1 ms 3512 KiB
random_06.txt AC 1 ms 3512 KiB
random_07.txt AC 1 ms 3536 KiB
random_08.txt AC 1 ms 3548 KiB
random_09.txt AC 1 ms 3568 KiB
random_10.txt AC 1 ms 3560 KiB
random_11.txt AC 1 ms 3560 KiB
random_12.txt AC 1 ms 3572 KiB
random_13.txt AC 1 ms 3700 KiB
random_14.txt AC 1 ms 3568 KiB
random_15.txt AC 1 ms 3560 KiB
random_16.txt AC 1 ms 3556 KiB
random_17.txt AC 1 ms 3520 KiB
random_18.txt AC 1 ms 3604 KiB
random_19.txt AC 1 ms 3460 KiB
sample_01.txt AC 1 ms 3400 KiB
sample_02.txt AC 1 ms 3528 KiB