coding-test-java / problems

0 stars 2 forks source link

박준형 / 3기 6주차 / 3문제 #123

Closed iamjunhyeong closed 4 months ago

iamjunhyeong commented 4 months ago

문제명 : 순회강연

시간 복잡도 : , 공간 복잡도 :

1. 풀이 과정

리스트에 넣고 p가 큰순으로 정렬했습니다.
그리고 해당 강연의 d 부터 d - 1 까지 반복하며 p가 해당 d의 p보다 크면 들어가도록 하였습니다.

문제명 : 문제집

시간 복잡도 : , 공간 복잡도 :

참고사이트: https://steady-coding.tistory.com/85

1. 풀이 과정

해당 문제는 풀이법을 참고하였습니다. 
먼저 2차원 List에 값을 다 담고, 먼저 풀어야하는 문제가 있는 문제 번호들은 cnt 배열에 (해당 문제 번호 == 인덱스) 인덱스의 값을 증가시켰습니다. 그리고 
1. cnt가 0인 문제 번호는 최소 힙에 넣고, 먼저 문제를 푼다. (풀었으므로 해당 문제 cnt[i]--)
2. 그리고 다시 cnt[i] == 0 인 문제가 생기므로 그 문제들을 다시 힙에 넣는다.
3. 1~2반복

문제명 : 더 맵게

시간 복잡도 : , 공간 복잡도 :

1. 풀이 과정

1. 일단 모두 최소 힙에 넣고, 하나씩 뽑으면서 K보다 작으면 한번 더 뽑아서 둘이 합친다.
2. 만약 처음 뽑았을 때, 이미 K보다 크다면 모두 K보다 큰 것이므로 종료