답안 #407590

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
407590 2021-05-19T03:55:59 Z juggernaut 원 고르기 (APIO18_circle_selection) C++17
0 / 100
685 ms 36416 KB
    #include <bits/stdc++.h>
        using i64 = long long;
        inline i64 sq(int x) { return i64(x) * x; }
        int main(){
            std::ios::sync_with_stdio(false);
            std::cin.tie(nullptr);
            int n;
            std::cin >> n;
            std::vector<int> x(n), y(n), r(n);
            for (int i = 0; i < n; i++) {
                std::cin >> x[i] >> y[i] >> r[i];
            }
            std::vector<int> ans(n, -1);
            std::vector<int> ind(n);
            iota(ind.begin(), ind.end(), 0);
            sort(ind.begin(), ind.end(), [&](int i, int j) {
                if (r[i] == r[j]) return i < j;
                return r[i] > r[j];
            });
            std::set<std::pair<int, int>> sr;
            for (int i = 0; i < n; i++) {
                sr.emplace(x[i] + r[i], i);
                sr.emplace(x[i] - r[i], i);
            }
            for (auto i : ind) {
              if(~ans[i])continue;
                while (sr.size()) {
                    auto it = sr.lower_bound({x[i] - r[i], -1});
                    if (it == sr.end()) break;
                    int j = it->second;
                  if(it->first>x[i]+r[i])break;
                    sr.erase(it);
                  ans[it->second]=i;
                }
            }
            for (auto x : ans) assert(~x), std::cout << x + 1 << ' ';
            std::cout << '\n';
        }

Compilation message

circle_selection.cpp: In function 'int main()':
circle_selection.cpp:30:25: warning: unused variable 'j' [-Wunused-variable]
   30 |                     int j = it->second;
      |                         ^
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 685 ms 36416 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 665 ms 36048 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Incorrect 1 ms 204 KB Output isn't correct
4 Halted 0 ms 0 KB -