QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#834305#8519. RadarssuoWA 1ms3668kbC++201.3kb2024-12-27 15:07:062024-12-27 15:07:07

Judging History

This is the latest submission verdict.

  • [2024-12-27 15:07:07]
  • Judged
  • Verdict: WA
  • Time: 1ms
  • Memory: 3668kb
  • [2024-12-27 15:07:06]
  • Submitted

answer

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

int n;
vector<vector<int>> a;

int getmin(int l, int r, int u, int d) {
    int res = 1 << 30;
    for (int i = l; i < r; i++) {
        for (int j = u; j < d; j++) {
            res = min(res, a[j][i]);
        }
    }
    return res;
}

void solve() {
    int n;
    cin >> n;
    a.resize(n);
    for (int i = 0; i < n; i++) {
        a[i].resize(n);
        for (int j = 0; j < n; j++) {
            cin >> a[i][j];
        }
    }
    int q1 = getmin(0, n / 2, 0, n / 2);
    int q2 = getmin(n / 2 + 1, n, 0, n / 2);
    int q3 = getmin(0, n / 2, n / 2 + 1, n);
    int q4 = getmin(n / 2 + 1, n, n / 2 + 1, n);

    int m1 = getmin(n / 2, n / 2 + 1, 0, n / 2);
    int m2 = getmin(0, n / 2, n / 2, n / 2 + 1);
    int m3 = getmin(n / 2, n / 2 + 1, n / 2 + 1, n);
    int m4 = getmin(n / 2 + 1, n, n / 2, n / 2 + 1);

    int q = a[n / 2][n / 2];

    int upmin = min(min(q1, m2) + min(q2, m4), m1);
    int dwmin = min(min(q3, m2) + min(q4, m4), m3);
    int lmin = min(min(q1, m1) + min(q3, m3), m2);
    int rmin = min(min(q2, m2) + min(q4, m3), m4);

    int ans = min(a[n / 2][n / 2], min(upmin + dwmin, lmin + rmin));
    cout << ans << endl;
}

int main() {
    int t;
    cin >> t;
    while (t > 0) {
        t--;
        solve();
    }
}

詳細信息

Test #1:

score: 100
Accepted
time: 1ms
memory: 3668kb

input:

2
3
1 1 1
1 1 1
1 1 1
5
8 5 2 8 3
5 6 9 7 3
7 8 9 1 4
8 9 4 5 5
2 8 6 9 3

output:

1
5

result:

ok 2 number(s): "1 5"

Test #2:

score: -100
Wrong Answer
time: 0ms
memory: 3624kb

input:

1
1
444739567

output:

0

result:

wrong answer 1st numbers differ - expected: '444739567', found: '0'