#include #include

using namespace std;

int main() { int n, m; cin >> n >> m;

vector<vector<int>> matrix(n, vector<int>(m));
for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
        cin >> matrix[i][j];
    }
}

vector<pair<int, pair<int, int>>> saddlePoints;
for (int i = 0; i < n; i++) {
    int minRow = matrix[i][0];
    int minColIndex = 0;
    for (int j = 1; j < m; j++) {
        if (matrix[i][j] < minRow) {
            minRow = matrix[i][j];
            minColIndex = j;
        }
    }
    
    bool isSaddlePoint = true;
    for (int k = 0; k < n; k++) {
        if (matrix[k][minColIndex] > minRow) {
            isSaddlePoint = false;
            break;
        }
    }
    
    if (isSaddlePoint) {
        saddlePoints.push_back({minRow, {i, minColIndex}});
    }
}

if (saddlePoints.empty()) {
    cout << "not exist" << endl;
} else {
    for (const auto& saddlePoint : saddlePoints) {
        cout << saddlePoint.second.first + 1 << " " << saddlePoint.second.second + 1 << " " << saddlePoint.first << endl;
    }
}

return 0;
n=5 m=55 6 7 8 94 5 6 7 83 4 5 2 12 3 4 9 01 2 5 4 8则1行1列上的数就是马鞍数。输入:共n+1行第一行:nmnm10第2到n+1行:每行m个整数每个数都10输出:输出若干行:如果存在马鞍数则输出所有马鞍数每行一个为行和列以及马鞍数。如果不存在马鞍数则输出not exit。用C++

原文地址: https://www.cveoy.top/t/topic/inpS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录