
프로그래머스 67256번 - [카카오 인턴]키패드 누르기 요구사항 1. 키패드의 1, 4, 7 숫자를 입력할 때는 왼손 엄지손가락을 사용한다. 2. 키패드의 3, 6, 9 숫자를 입력할 때는 오른손 엄지손가락을 사용한다. 3 - 1. 키패드의 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까운 엄지손가락을 사용한다. 3 - 2. 만약 거리가 같다면 오른손잡이는 오른손 엄지손가락, 왼손잡이는 왼손 엄지손가락을 사용한다. 4. 거리는 키패드 이동 한 칸이 1이다. 요구사항 분석 및 풀이과정 키패드 1을 원점으로 기준으로 하여 오른쪽과 아래쪽을 양의 방향으로 하여 각 숫자를 좌표의 형식으로 변환한다. 변환을 쉽게 하기 위하여 0을 제외한 키패드의 모든 숫자에서 1을 뺀 후, 3..

프로그래머스 70128번 - 내적 요구사항 1. 두 1차원 배열의 내적을 구하여라. 내적은 두 배열의 각 요소의 곱들의 합이다. 요구사항 분석 및 풀이과정 1. 주어진대로 구현하면 된다. 소스코드 작성 import java.util.stream.IntStream; class Solution { public int solution(int[] a, int[] b) { return IntStream.range(0, a.length).map(i -> a[i] * b[i]).sum(); } } 결과 소스코드 깃허브 주소 링크

프로그래머스 12912번 - 두 정수 사이의 합 요구사항 1. 정수 a와 b 사이(양 끝 포함)에 속한 모든 정수의 합을 반환하라. 주의할 점은 a와 b의 대소 관계는 정해져 있지 않다. 요구사항 분석 및 풀이과정 1. a와 b 중 작은 정수를 시작점, 큰 정수를 끝점으로 하여 합을 구하면 된다. 소스코드 작성 import java.util.stream.LongStream; class Solution { public long solution(int a, int b) { return LongStream.rangeClosed(Math.min(a, b), Math.max(a, b)).sum(); } } 결과 소스코드 깃허브 주소 링크

프로그래머스 12906번 - 같은 숫자는 싫어 요구사항 1. 배열에서 연속적으로 나타나는 숫자는 하나만 남기고 모두 제거하여 반환한다. 2. 단, 기존 배열의 순서는 그대로 따른다. 요구사항 분석 및 풀이과정 1. 연속적으로 나타나는 것을 제거하는 건 전형적인 Stack을 사용하는 문제 유형이다. 2. 배열을 순차적으로 순회한다. 3. 만약 Stack이 비어있지 않고 가장 최근에 삽입한(peek) 원소가 현재 원소와 같다면 연속적으로 등장하였다는 뜻이므로 삽입하지 않고 넘어간다. 4. 위의 상황에 해당하지 않으면 Stack에 삽입한다. 소스코드 작성 import java.util.Stack; class Solution { public int[] solution(int[] arr) { Stack resul..

프로그래머스 12944번 - 평균 구하기 요구사항 1. 정수 배열 arr의 평균값을 반환하라. 요구사항 분석 및 풀이과정 1. 정수 배열 arr의 모든 수를 더한 후, 배열의 크기로 나누어주면 된다. 소스코드 작성 import java.util.Arrays; class Solution { public double solution(int[] arr) { return (double)Arrays.stream(arr).sum() / arr.length; } } 결과 소스코드 깃허브 주소 링크
- Total
- Today
- Yesterday
- 프로그래머스
- 해쉬
- 스택
- 구현
- dfs
- 문자열
- 오늘의집
- 쓰레드
- 탐욕법
- 스트림
- 코딩인터뷰
- kotlin
- 연결리스트
- JPA
- 알고리즘
- 카카오
- k8s
- 회고
- set
- Java
- dsu
- dp
- TDD
- 우선순위큐
- BFS
- Uber
- 코드 스니펫
- 정렬
- 비트연산
- sql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |