프로그래머스 17686번 - [3차] 파일명 정렬 요구사항 1. 파일명을 HEAD, NUMBER, TAIL로 구분하여 각 기준을 통하여 정렬한 결과를 반환하라. 2. HEAD는 대소문자 구분을 하지 않고 사전 순으로 정렬하며 대소문자 차이 외에는 같을 경우 NUMBER의 정렬 기준을 따른다. 3. NUMBER는 오름차순으로 정렬되며, 숫자의 앞의 0은 무시된다. NUMBER 또한 같을 경우 원래의 입력 순서를 유지한다. 요구사항 분석 및 풀이과정 1. 주어진 파일명의 NUMBER의 부분만 구하면 파일명을 HEAD, NUMBER, TAIL로 구분하는 것은 쉽다. 2. 숫자가 처음 등장하는 부분과 숫자가 마지막으로 등장하는 부분을 구한다. 3. 그 위치를 기준으로 파일명을 HEAD, NUMBER, TAIL로..
프로그래머스 42747번 - H-Index 요구사항 1. 논문 n 편 중, h 번 이상 인용된 논문이 h 편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 H-Index이며 이를 반환하라. 요구사항 분석 및 풀이과정 1. 수들을 오름차순으로 정렬하면, i번째 원소의 우측 원소는 i번째 원소보다 크거나 같습니다. 2. 이를 이용하여 논문 인용 횟수를 담은 배열을 정렬하면, h번 이상 인용된 논문의 수를 쉽게 구할 수 있습니다. 3. 정렬한 배열을 순회하면서 주어진 조건이 맞는 H-index를 발견할 경우 반환하면 됩니다. 바로 반환하고 끝내도 되는 이유는 순회할수록 논문의 수가 줄어들기 때문에 H-index의 값도 줄어들기 때문입니다. 소스코드 작성 import java.util.Arrays..
프로그래머스 12939번 - 최댓값과 최솟값 요구사항 1. 공백으로 구분된 숫자들 중 최솟값과 최댓값을 "최솟값 최댓값"의 형태의 문자열로 반환하라. 요구사항 분석 및 풀이과정 1. 공백으로 구분된 숫자들을 공백을 기준으로 분해하여 숫자들을 구합니다. 2. 숫자들 중 최소와 최대를 구합니다. 3. "최소값 최댓값"의 형태의 문자열로 반환합니다. 소스코드 작성 import java.util.stream.Stream; import java.util.Arrays; class Solution { public String solution(String s) { int[] arr = Stream.of(s.split(" ")) .mapToInt(Integer::parseInt) .toArray(); Arrays.sor..
프로그래머스 42842번 - 카펫 요구사항 1. 테두리 1줄은 갈색, 중앙에는 노란색으로 칠해져 있는 카펫의 갈색과 노란색으로 색칠된 격자의 개수가 주어진다. 2. 갈색과 노란색의 색칠된 격자의 수를 통하여 전체 카펫의 가로, 세로 크기를 순서대로 반환하여라. 요구사항 분석 및 풀이과정 1. 카펫의 가로 길이가 m, 세로의 길이가 n인 카펫의 노란색으로 색칠된 격자의 개수는 m-2 * n-2 개다. 2. 갈색으로 색칠된 격자의 개수는 m*n - (m-2)*(n-2) 개이다. 3. 근의 공식을 이용하여 m, n을 구하면 다음과 같다. d = sqrt(((brown + 4)/2)^2 - 4 * (brown + yellow)) m = (brown + 4 + 2 * d) / 4 n = (brown + 4 - 2..
- Total
- Today
- Yesterday
- 알고리즘
- dsu
- 프로그래머스
- 회고
- k8s
- dp
- 코딩인터뷰
- Java
- TDD
- 스택
- 정렬
- 스트림
- 비트연산
- 문자열
- 우선순위큐
- 오늘의집
- sql
- 연결리스트
- 구현
- 카카오
- dfs
- 탐욕법
- set
- 코드 스니펫
- 쓰레드
- JPA
- Uber
- BFS
- 해쉬
- kotlin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |