Dev Hyeri

전체 글 470

[백준](2024)단어 정렬(설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/1181 난이도 알고리즘 실버5 문자열, 정렬 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 256MB 알파벳 소문자로 이루어진 단어 N개, 길이가 같으면 사전 순으로, 길이가 다르면 길이순으로 정렬 *중복 단어 distinct * (1 ≤ N ≤ 20,000) * 단어 : 문자열의 길이는 50을 넘지 않는다. 2. 설계/검증 입력 -N -words 설계 정렬 - Comparator이용 출력 - 정렬 후 이전 값과 같으면 출력 안 함. (중복된 값) 시간 복잡도 최악의 경우 공간 복잡도 O(N * M * log N) 3,000,000 O(N * M) 3. 정상 코드 import java.util.*; public class M..

[백준](2024) 행운의 바퀴 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/2840 난이도 알고리즘 실버4 구현, 시뮬레이션 1. 요구 사항 이해 시간, 메모리 제한 : 1초 / 128MB 돌린 횟수와 회전을 멈추었을 때 가리키던 글자를 통해 바퀴에 적힌 알파벳을 출력하라. 2. 설계/검증 입력 - N : 칸수 (2 ≤ N ≤ 25) - K : 반복 횟수 ( 1 ≤ K ≤ 100) - S : 이동 횟수 - A: 이동 완료 후 할당 값 설계 행운의 바퀴 칸에 글자가 있는 상태 반복하며 1*N 배열에 값 입력 - 인덱스에 S%N 더한 값이 N보다 작으면 그냥 더한 값을 다음 인덱스로 하고 - 인덱스에 S%N 더한 값이 N보다 크면 그 값에 -N -1한 값을 다음 인덱스로 한다. 행운의 바퀴 결정못함 vs 없음 ..

[백준](2024)ACM 호텔(설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/10250 난이도 알고리즘 브론즈3 수학, 구현, 사칙연산 1. 요구 사항 이해 시간, 메모리 제한 : 1초 / 256 MB 호텔의 형태와 배정 정책에 따라 N번째 손님에게 배정되어야 하는 방 번호를 출력하라. 2. 설계/검증 층수, 방 번호 - 몇 번째 손님인지와 H와 관련이 있음 시간 복잡도 최악의 경우 공간 복잡도 O(T * H * W) 9801 O(1) 3. 정상 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { // Scanner 객체 생성 Scanner scan = new Scanner(System.in); // ..

[백준](2024) 진법 변환 2 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/11005 난이도 알고리즘 브론즈1 수학, 구현 1. 요구 사항 이해 시간, 메모리 제한 : 0.5초 / 256MB 주어진 10진법 수 N을 B진법으로 출력하라. (2 ≤ B ≤ 36) *N은 10억보다 작거나 같은 자연수 2. 설계/검증 입력 - N : 10진법 자연수 - B : 변환할 진법 설계 : 진법으로 나누기에서 목과 나머지 - 나머지 10 미만 - 나머지 10 이상 : 알파벳 사용 A는 10~ Z는 35 시간 복잡도 최악의 경우 공간 복잡도 O(log(N)) 18.42 O(1) 3. 정상 코드 import java.util.Scanner; public class Main { public static void main(Str..

[해커랭크Medium] (2024) Binary Tree Nodes, 이진 트리 노드 (설명/코드/정답)

문제 링크 : https://www.hackerrank.com/challenges/binary-search-tree-1/problem 1. 요구 사항 이해 이진 트리 노드의 타입을 식별 최상위 노드 Root 최하위 노드 Leaf 중간 노드 Inner node 정렬 2. 설계/검증 Root - 최상위 노드 N은 부모 P값이 null Leaf - 최하위 노드는 부모에 해당하지 않는다. 3. 정상 코드 Binary Tree Nodes, 이진 트리 노드 SELECT N, CASE WHEN P IS NULL THEN "Root" WHEN N IN (SELECT P FROM BST WHERE P IS NOT NULL) THEN "Inner" ELSE "Leaf" END AS AA FROM BST ORDER BY N..

[백준](2024) 줄세우기 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/10431 난이도 알고리즘 실버5 구현, 시뮬레이션 1. 요구 사항 이해 시간, 메모리 제한 : 1초 / 256MB 주어진 방법대로 줄 서기를 시뮬레이션하면서 몇 번 뒤로 물러서는지를 계산. * P: 테스트 케이스의 수 (1 ≤ P ≤ 1000) * T : 각 테스트 케이스 번호 * 테스트 케이스는 20개의 양의 정수가 공백으로 구분되어 주어짐. 2. 설계/검증 입력 - 테스트 케이스의 수 - 테스트 케이스의 번호 - 테스트 케이스 번호에 해당하는 원소 시간 복잡도 최악의 경우 공간 복잡도 O(1) -- O(1) 3. 정상 코드 import java.util.Scanner; public class Main{ public static ..

[백준](2024) 성 지키기 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/1236 난이도 알고리즘 브론즈1 구현 1. 요구 사항 이해 시간, 메모리 제한 : 2초 / 128MB 각 행과 각 열을 순회하면서 해당 행과 열에 경비원이 하나도 없으면 카운팅 2. 설계/검증 입력 각 행과 열에 X가 존재하는지 여부를 저장하는 배열 시간 복잡도 최악의 경우 공간 복잡도 O(N * M) 2,500 O(N * M) 함수화 import java.util.*; public class Main { public static void main(String[] args) { // N,M,성의 상태를 입력받는다 // Scanner 객체 생성 Scanner scan = new Scanner(System.in); int N = sca..

[백준](2024) ✔️개미 (설명/코드/정답)

문제 링크 : https://www.acmicpc.net/problem/10158 난이도 알고리즘 실버3 수학, 애드 혹, 사칙연산 1. 요구 사항 이해 시간, 메모리 제한 : 0.15초 / 256MB x가 w, y가 h인 이차원 격자에서 x, y +1씩 이동. x가 0또는 w, y가 0또는 h일때 증감을 바꿔서 입력 횟수만큼의 이동 후 있는 위치를 계산 w와 h는 자연수이며 범위는 2 ≤ w,h ≤ 40,000 초기 위치 p와 q도 자연수이며 범위는 각각 0 < p < w과 0 < q < h 이동 횟수 t의 범위는 1 ≤ t ≤ 200,000,000 2. 설계/검증 입력 - 격자 설정 - 초기 위치 좌표 - 이동 횟수 이동 실행 반복문 - 증감 변환 시간 복잡도 최악의 경우 공간 복잡도 O(1) 3. ..