제출 #418422

#제출 시각아이디문제언어결과실행 시간메모리
418422EncryptingWolf모임들 (IOI18_meetings)C++14
컴파일 에러
0 ms0 KiB
#include <vector> #include <iostream> #include <queue> typedef long long ll; #define FOR(i,x,y) for (ll i = x; i<y; i++) using namespace std; vector<long long> minimum_costs(vector<int> H, vector<int> L, vector<int> R) { vector<ll> ou; FOR(Z, 0, L.size()) { vector<pair<ll, ll>> monSL; vector<pair<ll, ll>> monSR; vector<ll> distL; vector<ll> distR; vector<int> nH; FOR(i, L[Z], R[Z] + 1) { nH.push_back(H[i]); } distL.resize(nH.size()); distR.resize(nH.size()); FOR(i, 0,nH.size()) { while (true) { if (monSL.size() == 0) break; else { if (nH[i] < monSL[monSL.size() - 1].first) { break; } } monSL.pop_back(); } monSL.push_back({ nH[i],i }); if (monSL.size() == 1) { distL[i] = monSL[0].first*(i + 1); } else { distL[i] = monSL[monSL.size() - 1].first*(monSL[monSL.size() - 1].second - monSL[monSL.size() - 2].second) + distL[monSL[monSL.size() - 2].second]; } } reverse(nH.begin(),nH.end()); FOR(i, 0, nH.size()) { while (true) { if (monSR.size() == 0) break; else { if (nH[i] < monSR[monSR.size() - 1].first) { break; } } monSR.pop_back(); } monSR.push_back({ nH[i],i }); if (monSR.size() == 1) { distR[i] = monSR[0].first*(i + 1); } else { distR[i] = monSR[monSR.size() - 1].first*(monSR[monSR.size() - 1].second - monSR[monSR.size() - 2].second) + distR[monSR[monSR.size() - 2].second]; } } reverse(nH.begin(), nH.end()); reverse(distR.begin(), distR.end()); ll mi = 1e9; FOR(i, 0, nH.size()) mi = min(mi, distL[i] + distR[i]-nH[i]); ou.push_back(mi); } FOR(i, 0, ou.size()) { cout << ou[i] << ' '; } return ou; }

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

meetings.cpp: In function 'std::vector<long long int> minimum_costs(std::vector<int>, std::vector<int>, std::vector<int>)':
meetings.cpp:5:36: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 | #define FOR(i,x,y) for (ll i = x; i<y; i++)
......
   16 |  FOR(Z, 0, L.size())
      |      ~~~~~~~~~~~~~~                 
meetings.cpp:16:2: note: in expansion of macro 'FOR'
   16 |  FOR(Z, 0, L.size())
      |  ^~~
meetings.cpp:5:36: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 | #define FOR(i,x,y) for (ll i = x; i<y; i++)
......
   31 |   FOR(i, 0,nH.size())
      |       ~~~~~~~~~~~~~~                
meetings.cpp:31:3: note: in expansion of macro 'FOR'
   31 |   FOR(i, 0,nH.size())
      |   ^~~
meetings.cpp:56:3: error: 'reverse' was not declared in this scope
   56 |   reverse(nH.begin(),nH.end());
      |   ^~~~~~~
meetings.cpp:5:36: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 | #define FOR(i,x,y) for (ll i = x; i<y; i++)
......
   57 |   FOR(i, 0, nH.size())
      |       ~~~~~~~~~~~~~~~               
meetings.cpp:57:3: note: in expansion of macro 'FOR'
   57 |   FOR(i, 0, nH.size())
      |   ^~~
meetings.cpp:5:36: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 | #define FOR(i,x,y) for (ll i = x; i<y; i++)
......
   85 |   FOR(i, 0, nH.size())
      |       ~~~~~~~~~~~~~~~               
meetings.cpp:85:3: note: in expansion of macro 'FOR'
   85 |   FOR(i, 0, nH.size())
      |   ^~~
meetings.cpp:5:36: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    5 | #define FOR(i,x,y) for (ll i = x; i<y; i++)
......
   89 |  FOR(i, 0, ou.size())
      |      ~~~~~~~~~~~~~~~                
meetings.cpp:89:2: note: in expansion of macro 'FOR'
   89 |  FOR(i, 0, ou.size())
      |  ^~~