각 통나무에서 시작하는 지점을 1, 끝나는 다음지점(끝나는 지점도 통나무로 포함하기 때문)을 -1으로 두겠습니다. 그러면 위에 사진처럼 1 ~ 8번 인덱스는 각 1 1 0 -1 0 0 0 0으로 정의할 수 있다.
그런 다음 순차적으로 값을 더하여 가장 큰 max값을 찾아서 출력하면 되는 문제이다. #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); //cin의 속도를 더 빠르게 하기 위해 사용 vector vec(10000000); int lineNum, max = 0; int x1, x2, y1; int checkMin = 10000001, checkMax = 0; cin >> lineNum; for (int i = 0; i < lineNum; ++i) { cin >> x1 >> x2 >> y1; if (checkMin >...
#
3095
#
codeup
#
cpp
#
돌진
원문 링크 : codeup 3095 돌진 C++ 풀이