목록분류 전체보기 (159)
다희의 코딩 성장일기
[ 문제 ] [백준] 1991. 트리 순회 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net # 접근 방법 및 풀이 이진트리를 표현하는 방식에 따라 다양한 방법이 있는 문제다. 나는 트리표현을 2차원 배열로 표현하고 전위, 중위, 후위 메소드를 따로 만들어서 풀었다. 물론 메소드를 하나로 전위, 중위, 후위 다 돌릴 수도 있다. 혼자서 천천히 생각해보고 디버깅해보면서 풀었다. 자세한건 코드참조 # 주의할..
[ 문제 ] [프로그래머스] level1. 위클리 챌린지 6주차_복서 정렬하기 (자바 JAVA) 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/85002?language=java 코딩테스트 연습 - 6주차_복서 정렬하기 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr # 접근 방법 및 풀이 문제 제목에 적힌대로 정렬문제다. boxer라는 클래스를 만들어 정렬에 필요한 변수들을 선언해주었다. num = 번호, cnt = 자신보다 몸무게가 무거운 복..
[ 문제 ] [백준] 1012. 유기농 배추(자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net # 접근 방법 및 풀이 BFS로 풀었다. 문제대로 이차원 배열 map[][]을 만들어 배추가 심어진 곳을 1로 표시한다. map을 탐색하며 값이 1일 경우 ans++시켜준다. 1을 발견하고, BFS 돌리면 상하좌우 인접한 1로표시된 영역에는 방문체크가 된다. 이렇게 탐색하며 방문하지 않은 새로운 1을 발견할 때마다 ans를 증가시키고 ..
[ 문제 ] [백준] 11899. 괄호 끼워넣기 (자바 JAVA) 문제 링크 : https://www.acmicpc.net/problem/11899 11899번: 괄호 끼워넣기 첫 번째 줄에 S를 올바른 괄호열으로 만들기 위해 앞과 뒤에 붙여야 할 괄호의 최소 개수를 출력합니다. 불가능한 경우는 주어지지 않습니다. www.acmicpc.net # 접근 방법 및 풀이 스택 기초 문제다. 올바른 괄호열이라면 '('일때 stack에 push하고 ')'일때 stack에서 pop해서 주어진 문자열을 다 탐색하고 난 뒤에 스택 사이즈는 0일 것이다. 그러나 문제에선 올바른 괄호열을 만들기 위해 필요한 최소 횟수이므로, 위의 특징을 알고 있다면 쉽게 풀 수 있다. 마찬가지로 '('일때 stack에 push하고, ')..
[ 문제 ] [SWEA] 1953. 탈주범 검거(자바 JAVA) 문제 링크 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpLlKAQ4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # 접근 방법 및 풀이 BFS + 구현 문제이다. 처음에 그냥 터널이 깔린 곳은 다 갈 수 있는 줄 알았는데, 터널이 서로 연결될 수 있는 구조일때만 갈 수 있다. 1~7번 터널 중, "현재 터널 번호에 따라 살펴볼 수 있는 방향"과 "터널 번호에 따라 연결될 수 있는 구조물"이 다르다. 이 2가지를 처리하는게 핵심인 문..
[ 문제 ] [SWEA] 4012. 요리사 (자바 JAVA) 문제 링크 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeUtVakTMDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # 접근 방법 및 풀이 조합으로 풀었다. 근데 조합코드보단 부분집합이 섞인..? 식재료 수는 N 개고 짝수다. 이중 절반을 뽑아, 뽑은것은 A, 뽑지않은 것은 B로 나눠서 풀었다. 따라서 최대 N = 16일때, 8개를 뽑아야 하므로 16C8로 시간 안에 풀 수 있다. 시간초과가 난다면 2^16개를 다 뽑은 후 절반으로 나뉘어..