[BOJ] 7453번: 4 Values whose Sum is 0

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


4중 for문을 돌려 정직하게 풀어내려고 한다면 O(N^4)로 무조건 시간초과가 발생합니다. 대신 A, B 두 그룹에서 표현가능한 모든 합이 저장된 배열1, C, D 두 그룹에서 표현가능한 모든 합이 저장된 배열2를 만들어 이 둘을 가지고 binary search를 한다면 시간복잡도는 O(N^2logN)이 됩니다. 답 갯수가 int 범위를 넘을 수 있음에 유의해야합니다.


int 3000개 정도의 배열을 잡았는데 대충 128MB 안에서 해결이 되네요. 


https://github.com/blisstoner/BOJ/blob/master/7453.cpp

'알고리즘 > BOJ' 카테고리의 다른 글

[BOJ] 14888번: 연산자 끼워넣기  (0) 2018.01.15
[BOJ] 5397번: Keylogger  (0) 2018.01.15
[BOJ] 11723번: 집합  (0) 2018.01.13
[BOJ] 1786번: 찾기  (0) 2018.01.12
[BOJ] 10217번: KCM Travel  (0) 2018.01.10
[BOJ] 11657번: 타임머신  (0) 2018.01.09
  Comments