Skip to content

Conversation

@LiiNi-coder
Copy link
Contributor

🧷 문제 링크

https://www.acmicpc.net/problem/19951

🧭 풀이 시간

35 분

👀 체감 난이도

✏️ 문제 설명

  • 수열에서 어느 범위구간의 일괄 덧셈, 및 일괄 뺄셈 명령어가 수많이 들어가있다. 이 일괄을 계속 행하는 것은 시간상 오래걸리니, 이 일괄들을 한번에 처리하여 딱 한번만 범위 일괄 연산을 하도록 하여라.

🔍 풀이 방법

  • 차분배열 : 1번째부터 3번째까지 4를 더한다고 하면, 차분배열[1] = 4, 차분배열[3+1] = -4 이렇게 표기한다. 그러다 연산이 모두 끝나면 차분배열을 누적합시킨다. 그렇다면 드디어 최종 차이배열이 생성되고, 원본과 이 차이배열을 더하면 된다.

⏳ 회고

  • B형문제에서 이를 사용한 문제가 나왔다. 차분배열 개념은 넌지시 사용하였으나, 이를 누적합시키면 원하는 최종 차이배열이 생긴다는 것을 알아내지 못했다. 이제 외우자
  • 구간 일괄 연산 == 차분배열 + 연산 모두 끝나면 차분배열을 누적합

@LiiNi-coder LiiNi-coder added the hint 💡 반례를 참고했거나 힌트를 얻고 풀었을 때 label Aug 2, 2025
@ShinHeeEul ShinHeeEul merged commit b9e3ee5 into main Aug 2, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hint 💡 반례를 참고했거나 힌트를 얻고 풀었을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants