제출 #599137

#제출 시각아이디문제언어결과실행 시간메모리
599137pakhomovee커다란 상품 (IOI17_prize)C++17
컴파일 에러
0 ms0 KiB
#include "prize.h" #include <vector> int find_best(int n) { int pr = 0; map<int, int> d; while (pr != n) { int l = pr, r = n; while (l + 1 < r) { int m = (l + r) / 2; int have = 0; std::vector<int> q = ask(m)[0]; int lt = q[0]; int rt = q[1]; for (auto [x, y] : d) { if (lt + rt > x) { have += y; } } if (lt - have) { r = m; } else { l = m; } } std::vector<int> arr = ask(l); if (arr[0] == arr[1] && arr[0] == 0) { return l; } ++d[arr[0] + arr[1]]; pr = l + 1; } return -1; }

컴파일 시 표준 에러 (stderr) 메시지

prize.cpp: In function 'int find_best(int)':
prize.cpp:6:5: error: 'map' was not declared in this scope
    6 |     map<int, int> d;
      |     ^~~
prize.cpp:6:9: error: expected primary-expression before 'int'
    6 |     map<int, int> d;
      |         ^~~
prize.cpp:12:42: error: conversion from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to non-scalar type 'std::vector<int>' requested
   12 |             std::vector<int> q = ask(m)[0];
      |                                          ^
prize.cpp:15:32: error: 'd' was not declared in this scope
   15 |             for (auto [x, y] : d) {
      |                                ^
prize.cpp:30:11: error: 'd' was not declared in this scope
   30 |         ++d[arr[0] + arr[1]];
      |           ^