문제 - (https://www.acmicpc.net/problem/16235) 구현 자체는 어렵지 않은 시뮬레이션 문제였다 문제를 풀면서 이게 골드 4라고?라고 생각할 정도였으니,... 근데 채점을 해보니 바로 시간초과가 났다. 이 문제의 키포인트는 어떻게 시간초과가 나지 않게 시뮬레이션을 돌릴 것인지 인 것 같다. 앞으로의 코딩에서도 그렇고 꼭 알고 넘어가야 할 것이 있어서 블로그에 포스팅하기로 했다. 처음에 자꾸 시간초과가시간 초과가 떴을 때 어디가 문젠지 몰라서 시간 초과가 날만한 곳을 예상하고 수정해서 제출하기를 반복했다. - 죽은 나무를 큐에 담아서 시간초과가 났나? => 아님. 큐의 offer, poll은 O(1)이다. - remove할 때 시간 복잡도가 큰가? => 아님. LinkedLis..

문제 - (https://programmers.co.kr/learn/courses/30/lessons/67257) 연산자를 사용하는 문제였다 100-200*300-500+20이라는 문자열이 주어진다면, 원래대로라면 [*] -> [+,-] 순서로 연산을 진행해야 하지만 문제에서는 연산자 우선순위 순서를 다르게 했을 때, 결과값의 절댓값이 최대가 될 때의 값을 원했다. 참고로, 위 문자열은 *, +, - 순서로 우선순위를 줬을 때, -60420이라는 값이 나오게 된다. 절댓값이 60420이므로 가장 큰 수가 되서 답이 된다. 처음에는 연산자 우선순위를 두고 어떻게 계산할까 고민하다가 보통 이런 문제 스택을 사용했던 것 같아서 스택으로 풀어보려고 했다. 하지만 생각보다 너무 어려웠다.... 그래서 다르게 생각..
문제 - (https://www.acmicpc.net/problem/1969) 개인적으로 그리디 문제에 약하다고 생각해서 최근 그리디 문제를 많이 풀어보고 있다 여전히 오답이 많고 시간도 오래걸려서 좌절해있다가... 이 문제만큼은 자신있게 풀고 완벽히 이해하여 포스팅하려고 한다 (내가 생각해낸 방법이 기특해서 다음에 잊지않게 하기 위해서 ㅋㅋ) 그냥,, 간단하다! 주어진 DNA의 각 자릿수 알파벳의 수를 센다.각 자리마다 가장 많이 출현한 알파벳을 선정하면 그것이 답이된다! 우선, 알파벳의 길이만큼의 배열을 만들었다. 알파벳은 총 26개 있으니 alphabet[26]인 배열을 만든 것이다. DNA들의 알파벳 수를 각 자릿수별로 세야하므로 alphabet[m][26]의 2차원 배열을 만들면 이렇게 해석할 ..

내가 접했던 문제는 원형 회전판문제였다. 배열 pan[]이 있다고 치면 이 배열을 회전판이라고 생각하자 0 1 2 3 빨간색 화살표가 가리키는 숫자를 보면 회전판을 반시계방향으로 돌리면 0 -> 1 -> 2 -> 3 -> 0 -> 1 -> 2 -> 3 -> ... 이지만 회전판을 시계방향으로 돌리면 0 -> 3 -> 2 -> 1 -> 0 -> 3 -> 2 -> 1 -> ... 이다. 1에서 보다시피, 반시계로 돌려야 배열을 오른쪽으로 순회하고 시계로 돌리면 왼쪽으로 순회하는 것을 알 수 있다. 그렇다면 문제, Q. 반시계 방향으로 7만큼 돌렸을 때, 화살표가 가르키는 숫자는? 이거... 어떻게 구현할까? 1의 반시계의 경우는 쉽다. 회전판이 처음 가르키는 위치의 인덱스가 i라고 하면, pan[( i + ..
- Total
- Today
- Yesterday
- BOJ
- withCredentials
- 코테
- 백준
- 자바
- 배열순회
- 완전탐색
- 구현
- 코딩테스트 연습
- 인구이동
- 프로그래머스
- 우선순위큐
- header
- 사다리 조작
- 큰 수 만들기
- Access-Control-Allow-Origin
- 구명보트
- 재귀
- 그리디
- 14891
- 16234
- dfs
- 드래곤 커브
- 아기상어
- 코딩테스트
- Greedy
- java
- 시뮬레이션
- 브라우저 요청
- 톱니바퀴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 |
30 | 31 |