1039번 - 교환
간단하게 풀이과정을 설명하면
1 <= i < j < m 조건에 맞는 순서쌍을 모두 pos에 저장합니다.
이후 백트래킹을 이용해서 k가 총 10번 연산할 수 있으니 10개의 순서쌍을 고른 뒤에
10개의 순서쌍에 맞게 swap을 진행한 후 최대값을 계속해서 갱신해서 답을 찾습니다.
왜 시간 초과가 날까요?
10번 pick이면 10! = 대략 400만 아닌가요??..
pos 크기가 n이 6자리일 때 (6+1)*6/2 = 21이기 때문에 21*20*19*18*17*16*15*14*13*12만큼 연산이 수행됩니다.
@zigui다시 보니까 확실히 터질 만 했네요. 시간 내주셔서 답변 감사합니다.
댓글을 작성하려면 로그인해야 합니다.
paparoni 2년 전
간단하게 풀이과정을 설명하면
1 <= i < j < m 조건에 맞는 순서쌍을 모두 pos에 저장합니다.
이후 백트래킹을 이용해서 k가 총 10번 연산할 수 있으니 10개의 순서쌍을 고른 뒤에
10개의 순서쌍에 맞게 swap을 진행한 후 최대값을 계속해서 갱신해서 답을 찾습니다.
왜 시간 초과가 날까요?
10번 pick이면 10! = 대략 400만 아닌가요??..