모든 수업을 들을 수 있는 최소 강의실 갯수를 구하는 문제 문제 김종혜 선생님한테는 Si에 시작해서 Ti에 끝나는 N개의 수업이 주어지는데, 최소의 강의실을 사용해서 모든 수업을 가능하게 해야 한다. 참고로, 수업이 끝난 직후에 다음 수업을 시작할 수 있다. (즉, Ti ≤ Sj 일 경우 i 수업과 j 수업은 같이 들을 수 있다.) 입력 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (0 ≤ Si < Ti ≤ 10^9) 출력 강의실의 개수를 출력하라. 풀이 항상 나를 힘들게 하는 시간초과... 처음에 짰던 로직의 흐름은 맞았지만 계속 시간초과 나서 수정해야 했습니다. 처음에 짰던 코드 입력으로 주어지는 강의 시간들을 우선순위 큐에 저장한다. 우선..
수를 적절하게 묶어서 곱했을 때 구할 수 있는 최대 합계를 구하는 문제 문제의 조건 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 상관없이 묶을 수 있다. 하지만, 같은 위치에 있는 수(자기 자신)를 묶는 것은 불가능하다. 그리고 어떤 수를 묶게 되면, 수열의 합을 구할 때 묶은 수는 서로 곱한 후에 더한다. 예를 들면, 어떤 수열이 {0, 1, 2, 4, 3, 5}일 때, 그냥 이 수열의 합을 구하면 0+1+2+4+3+5 = 15이다. 하지만, 2와 3을 묶고, 4와 5를 묶게 되면, 0+1+(2*3)+(4*5) = 27이 되어 최대가 된다. 수열의 모..
안 매운 음식들을 섞어서 매운 음식으로 만들건데 총 몇 번 섞어야 하는지 구하는 문제 문제의 조건 1. 음식들의 맵기를 담은 배열 scoville, 기준이 되는 스코빌 지수 K가 주어짐 2. scoville 원소들이 K 이상 되어야 함 3. 새로운 음식을 만드는 공식은 이렇다. 가장 덜 매운 두가지를 뽑아서 위의 공식으로 섞는다. 4. 모든 음식을 K 이상으로 만들 수 없으면 -1 리턴 (이 예외처리를 안 해서 또 시간 날림 ㅠ.ㅠ 문제를 똑바로 읽읍시다...) 5. 가장 덜 매운 음식의 지수가 최소 K 이상 되려면 몇 번 섞어야 하는지 구해서 리턴하기 원소 하나하나 복사해서 set으로 만든다고 뻘짓했는데 우선순위 큐로 쉽게 해결할 수 있었던 문제... #include #include #include u..
- Total
- Today
- Yesterday
- 코딩공부
- 애플
- 깊이우선탐색
- 컴퓨터공부
- 문제풀이
- 하드웨어
- 아이패드
- 백준
- 해커랭크
- C언어기초
- 프로그래밍
- c++
- BFS
- hackerrank
- DFS
- 그리디
- 알고리즘
- 다이나믹프로그래밍
- greedy
- 스위프트플레이그라운드
- 영어공부
- 캐나다생활
- 기초
- 컴퓨터
- dp
- 캐나다
- 프로그래머스
- 컴퓨터사이언스
- 너비우선탐색
- c언어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |