답안 #372692

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
372692 2021-03-01T09:59:43 Z hoanghq2004 산악 구조대 (JOI13_mountain) C++14
0 / 100
9 ms 2540 KB
#include <bits/stdc++.h>
#include "grader.h"

using namespace std;

void Rescue(int n, int m, int RS, int CS, int X) {
    map <int, vector <pair <int, int> > > mp;
    vector <pair <int, int> > block[(n + 10) * (m + 10)];
    vector <vector <int> > height(n + 10, vector <int> (m + 10, -1));
    for (int i = 1; i <= n; ++i) {
        for (int j = 1; j <= m; ++j) {
            mp[abs(i - RS) + abs(j - CS)].push_back({i, j});
        }
    }
    int sz = 0;
    for (auto [id, vcell]: mp) block[sz++] = vcell;
    auto ask = [&](int i, int j) {
        if (height[i][j] != -1) return height[i][j];
        height[i][j] = Measure(i, j);
        if (height[i][j] == X) Pinpoint(i, j);
        return height[i][j];
    };
    int L = 0, R = sz - 1;
    while (R - L > 1) {
        int mid = L + R >> 1;
        if (ask(block[mid].front().first, block[mid].front().second) < X) L = mid;
        else R = mid;
    }
    for (auto [i, j]: block[L]) ask(i, j);
    for (auto [i, j]: block[R]) ask(i, j);
}

Compilation message

mountain.cpp: In function 'void Rescue(int, int, int, int, int)':
mountain.cpp:16:15: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   16 |     for (auto [id, vcell]: mp) block[sz++] = vcell;
      |               ^
mountain.cpp:25:21: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   25 |         int mid = L + R >> 1;
      |                   ~~^~~
mountain.cpp:29:15: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   29 |     for (auto [i, j]: block[L]) ask(i, j);
      |               ^
mountain.cpp:30:15: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   30 |     for (auto [i, j]: block[R]) ask(i, j);
      |               ^
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Incorrect 1 ms 364 KB Wrong Answer [5]
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 9 ms 2540 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -