189922025-11-13 20:52:41MagyarKendeSZLGCseppkőbarlang (45 pont)cpp17Accepted 45/4520ms2852 KiB
#include <bits/stdc++.h>
using namespace std;
#define int int64_t

const int di[] = {1, -1, 0, 0}, dj[] = {0, 0, 1, -1};

int32_t main() {
    cin.tie(0), ios::sync_with_stdio(0);
    int n, m;
    cin >> n >> m;
    vector g(n, vector<int>(m));
    for (auto& row : g) {
        for (int& x : row) cin >> x;
    }
    vector<array<int, 3>> ptS;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            if (!g[i][j]) continue;
            ptS.push_back({g[i][j], i, j});
        }
    }
    sort(ptS.begin(), ptS.end());

    vector vis(n, vector<bool>(m));
    auto bfs = [&](int si, int sj) {
        vis[si][sj] = 1;
        queue<array<int, 2>> q({{si, sj}});
        while (!q.empty()) {
            auto [i, j] = q.front();
            q.pop();
            for (int k = 0; k < 4; k++) {
                int ni = i + di[k], nj = j + dj[k];
                if (ni < 0 || ni >= n || nj < 0 ||
                    nj >= m || vis[ni][nj] ||
                    g[i][j] > g[ni][nj])
                    continue;
                vis[ni][nj] = 1;
                q.push({ni, nj});
            }
        }
    };

    vector<array<int, 2>> result;
    for (auto [gij, i, j] : ptS) {
        if (!vis[i][j]) {
            bfs(i, j);
            result.push_back({i, j});
        }
    }

    cout << result.size() << "\n";
    for (auto [i, j] : result) {
        cout << i + 1 << " " << j + 1 << "\n";
    }
}
SubtaskSumTestVerdictTimeMemory
base45/45
1Accepted0/01ms500 KiB
2Accepted0/01ms320 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Accepted2/212ms1840 KiB
6Accepted2/212ms1704 KiB
7Accepted2/210ms1712 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms508 KiB
10Accepted3/314ms1972 KiB
11Accepted3/320ms2852 KiB
12Accepted3/316ms2088 KiB
13Accepted3/317ms2152 KiB
14Accepted3/39ms1328 KiB
15Accepted3/317ms1964 KiB
16Accepted3/317ms1960 KiB
17Accepted3/317ms2044 KiB
18Accepted3/317ms1964 KiB
19Accepted3/316ms1904 KiB
20Accepted3/319ms2732 KiB