개발자 톡
연습문제 톡
GBC
c++로 풀었습니다.
- 등록일
- 2024-09-11 15:45:39
- 조회수
- 149
- 작성자
- hyymi1469
#include<iostream> #include<vector> using namespace std; int main(int argc, char** argv) { int m = 0; int n = 0; cin >> m >> n; std::vector<std::pair<int,int>> pivotVec; std::vector<std::pair<int,int>> customVec; for(int i = 0; i < m; ++i) { int dis = 0; int speed = 0; cin >> dis >> speed; pivotVec.emplace_back(std::pair(dis, speed)); } for(int i = 0; i < n; ++i) { int dis = 0; int speed = 0; cin >> dis >> speed; customVec.emplace_back(std::pair(dis, speed)); } // 로직 시작 int result = 0; for(auto iter : pivotVec) { int pivotDis = iter.first; const int pivotSpeed = iter.second; int delCustomCount = 0; for(auto& iter2 : customVec) { int& customDis = iter2.first; const int customSpeed = iter2.second; bool isContinue = false; if(pivotDis > customDis) { pivotDis -= customDis; ++delCustomCount; isContinue = true; } else if(pivotDis < customDis) { customDis -= pivotDis; } else { ++delCustomCount; } if(pivotSpeed < customSpeed) { int tempSpeed = customSpeed - pivotSpeed; if(result < tempSpeed) result = tempSpeed; } if(!isContinue) break; } for(int i = 0; i < delCustomCount; ++i) customVec.erase(customVec.begin()); } cout << result; return 0; }
좀 더 효율적으로 짤 수도 있는데 생각나는대로 막 했습니다.
#GBC