Submission #1167256

#TimeUsernameProblemLanguageResultExecution timeMemory
1167256sunflowerBold (COCI21_bold)C++17
50 / 50
0 ms328 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define MASK(x) (1LL << (x))
#define BIT(x, i) (((x) >> (i)) & 1)
#define SZ(x) ((int) (x).size())
#define ALL(a) (a).begin(), (a).end()
#define FOR(i, a, b) for (int i = (a); i <= (b); ++i)
#define FORD(i, a, b) for (int i = (a); i >= (b); --i)
#define debug(x) cerr << "[" << #x << " = " << (x) << "]" << endl

#define left    __left
#define right   __right
#define prev    __prev
#define fi      first
#define se      second

template <class X, class Y>
    bool maximize(X &x, Y y) {
        if (x < y) return x = y, true;
        else return false;
    }

template <class X, class Y>
    bool minimize(X &x, Y y) {
        if (x > y) return x = y, true;
        else return false;
    }

int numRow, numCol;

const int dx[] = {0, 1, 1};
const int dy[] = {1, 0, 1};

#define MAX_N 102
char a[MAX_N + 2][MAX_N + 2];
bool vis[MAX_N + 2][MAX_N + 2];

bool inside(int x, int y) {
    return (x >= 1 && x <= numRow && y >= 1 && y <= numCol);
}

int main() {
    ios_base::sync_with_stdio(false);cin.tie(nullptr);
    cin >> numRow >> numCol;
    FOR(i, 1, numRow) FOR(j, 1, numCol) cin >> a[i][j];

    FOR(i, 1, numRow) FOR(j, 1, numCol) {
        if (a[i][j] == '#') {
            FOR(k, 0, 2) {
                int nx = i + dx[k], ny = j + dy[k];
                if (inside(nx, ny)) vis[nx][ny] = true;
            }
        }
    }

    FOR(i, 1, numRow) {
        FOR(j, 1, numCol) {
            if (a[i][j] == '#' || vis[i][j]) cout << '#';
            else cout << '.';
        }
        cout << "\n";
    }

    return 0;
}

/* Discipline - Calm */
#Verdict Execution timeMemoryGrader output
Fetching results...