
프로그래머스 12945번 - 피보나치 수 요구사항 1. N번째 피보나치 수를 1234567로 나눈 나머지를 반환하라. 피보나치 수 점화식 F[N] = F[N-1] + F[N-2] ( N >= 2 ) F[0] = 0, F[1] = 1 요구사항 분석 및 풀이과정 1. 피보나치 점화식을 이용하여 N번째 피보나치 수까지 구하여 1234567로 나눈 나머지를 반환하여 준다. (a + b) % k = ((a % k) + (b % k)) % k 피보나치 수가 얼마까지 커지는지 파악하기가 어려워서, 오버 플로우 방지를 위하여 마지막에 나눠주는 것이 아니라 매번 구할 때 나누어줬다. 소스코드 작성 class Solution { private final int MOD = 1234567; private long mod(lo..

프로그래머스 12909번 - 올바른 괄호 요구사항 1. '(' 문자로 괄호가 열렸으면 반드시 짝지어서 ')' 문자로 괄호가 닫혀야 한다. 2. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때 올바른 괄호인지를 반환하라. 3. 올바른 괄호인 경우 true, 잘못된 괄호인 경우 false 요구사항 분석 및 풀이과정 1. 문자열의 문자 배열을 순회하여 '('를 만나면 스택에 넣는다. - ')'이 나타나면 짝을 맞춰 삭제해주기 위해서 보관합니다. 2-1. ')'를 만나면 스택의 가장 위의 원소가 '('이면 정상적으로 짝이 맞으므로 삭제하여준다. 2-2. 만약 스택이 비었거나, 가장 위의 원소가 '('이 아니라면 짝이 맞지 않는 잘못된 괄호 문자열(false)이다. 3. 또한 모든 작업을 마쳤는데 스택..

프로그래머스 42840번 - 모의고사 요구사항 1. 수포자 삼인방 중 가장 많은 문제를 맞힌 사람이 누구인지 반환하라. 2. 1번 수포자는 1번, 2번, 3번, 4번, 5번 순으로 반복하여 답을 찍는다. 3. 2번 수포자는 2번, 1번, 2번, 3번, 2번, 4번, 2번, 5번 순으로 반복하여 답을 찍는다. 4. 3번 수포자는 3번, 3번, 1번, 1번, 1번, 2번, 2번, 4번, 4번, 5번, 5번 순으로 반복하여 답을 찍는다. 요구사항 분석 및 풀이과정 1. 각 수포자는 일정한 패턴으로 반복하여 답을 찍기때문에, 패턴의 길이와 나머지 연산을 통하여 i번째 찍는 답을 알아내면 된다. 2. 각 수포자가 맞힌 문제의 수를 구한 후 가장 많이 맞춘 사람을 반환한다. 소스코드 작성 import java.ut..

프로그래머스 42587번 - 프린터 요구사항 1. 주어진 문서를 다음과 같은 방식으로 작업을 수행합니다. 2-1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼낸다. 2-2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣는다. 2-3. 그렇지 않으면 J를 인쇄합니다. 3. 위의 방식대로 출력할 때 내가 인쇄를 요청한 문서(위치 : location)가 몇 번째로 인쇄되는지를 반환하라. 요구사항 분석 및 풀이과정 1. 우선순위가 높은 문서가 먼저 출력하는 건 맞지만, 인쇄 요청된 기존 문서의 순서는 유지하여야 하므로 큐를 사용하여야 한다. 2. 그 이외는 정직하게 주어진 작업 방식을 그대로 구현하면 된다. 너무 간단하다. 3. 단, ..

프로그래머스 42586번 - 기능개발 요구사항 1. 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 경우 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포할 수 있습니다. 2. 각 작업의 진도와 작업 속도가 주어지며, 작업의 진도가 100%가 되면 배포가 가능합니다. 2. 각 배포마다 몇 개의 기능이 배포되는지 반환하라. 요구사항 분석 및 풀이과정 1. 중요한 점은 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발되더라도, 앞의 기능이 배포되지 않으면 기다려야 한다는 점입니다. 2. 작업의 진도와 속도를 이용하여 각 작업에 며칠이 소요되는지를 큐에 담습니다. 3. 큐에서 앞의 기능을 하나 꺼낸 후, 앞의 기능이 완료될 때까지 걸리는 소요시간보다 적게 걸리는 기능을 찾습니다. 3-1. 찾는 이유는 ..
- Total
- Today
- Yesterday
- 오늘의집
- 쓰레드
- JPA
- BFS
- 연결리스트
- Java
- TDD
- dsu
- 비트연산
- 문자열
- kotlin
- dfs
- 회고
- 코드 스니펫
- dp
- 우선순위큐
- 해쉬
- 스택
- 코딩인터뷰
- k8s
- 스트림
- 정렬
- sql
- 카카오
- 알고리즘
- 구현
- Uber
- set
- 프로그래머스
- 탐욕법
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |