반응형

전체 글 201

[프로그래머스] SELECT : 과일로 만든 아이스크림 고르기

https://school.programmers.co.kr/learn/courses/30/lessons/133025 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr[풀이과정]JOIN과 alias 사용, 조건 2개 모두 충족 원할 시 AND 사용 [코드]SELECT a.FLAVORFROM FIRST_HALF AS aLEFT JOIN ICECREAM_INFO AS bON a.FLAVOR = b.FLAVORWHERE TOTAL_ORDER > 3000 AND INGREDIENT_TYPE = 'fruit_based';

[백준] 1068 : 트리 (JAVA)

https://www.acmicpc.net/problem/1068 [풀이과정]노드 삭제 후 그냥 탐색하면 되는데 복잡하게 생각했던 것 같다.항상 간단하게 생각하는 습관을 들이자 [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.StringTokenizer;/*트리가 주어졌을 때 노드 하나를 지우면남은 트리에서 리프 노드의 개수를 구하기리프노드 : 자식의 개수가 0인 노드 */public class Main { static BufferedReader br = new BufferedReader(new Inpu..

백준/DFS BFS 2024.11.01

[백준] 6198 : 옥상 정원 꾸미기 (JAVA)

https://www.acmicpc.net/problem/6198 [풀이과정]예전에 비슷한 문제를 풀었던 것 같은데 문제 이름이 생각이 안난다.그때는 그냥 배열에 값 넣고 비교하며 풀었던 것 같다.이번엔 스택 이용해서 풀었는데 조금 더 복잡하고 사고해야 했었지만 더 간결한 코드가 나온 것 같아 기분이 좋다.answer 변수를 long 타입으로 선언해야 함에 주의! [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Stack;import java.util.StringTokenizer;/*N개의 빌딩 = = = = ..

알고리즘/스텍 2024.11.01

[백준] 17404 : RGB 거리 2 (JAVA)

https://www.acmicpc.net/problem/17404 [풀이과정]최대한 단순하게 생각하는 것이 풀이의 핵심인 것 같다.RGB거리 실버 1보단 어려웠다.https://www.acmicpc.net/problem/1149 [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/*집이 N개.각각의 집을 빨강, 초록, 파랑으로 칠하는 비용이 주어졌을 때,1. 1번 집의 색은 2번, N번 집의 색과 같지 않아야 한다.2. N번 집의 색은 N-1번, 1번 집의 색과 같지 않아야 한다.3. i(2

알고리즘/DP 2024.11.01

[백준] 7569 : 토마토 (JAVA)

https://www.acmicpc.net/problem/7569 [풀이과정]이전에 풀었던 2차원 토마토 문제를 3차원으로 늘린 것 뿐인 문제였다.https://www.acmicpc.net/problem/7576근데 row랑 column 헷갈려서 헤맸는데, 다음부턴 더 꼼꼼하게 풀기 [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Queue;import java.util.StringTokenizer;/*M*N*H 크기의 상자익은 토마토의 인접(위,아래,왼쪽,오른쪽,앞,뒤)한 토마토는 익게 됨.보관된 토마토가..

백준/DFS BFS 2024.11.01

[백준] 14921 : 용액 합성하기 (JAVA)

https://www.acmicpc.net/problem/14921 [풀이과정]완탐으로 하기엔 N이 10만이어서 불가능했다.O(N)의 투포인터로 구현했음.일단 오름차순으로 나열한 후 양끝의 값들을 비교하며 0과의 차이가 가장 적은 걸 찾아줬다.이때 더한 값이 음수라면 오른쪽 포인터를 이동시켜줬고, 양수라면 왼쪽 포인터를 이동시켜줬다.0과의 차이는 절댓값으로 비교해줘야 했지만 실제 출력되는 것은 음수인지 양수인지도 표기해야 했으므로 비교만 절댓값으로 해줬다. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.Strin..

백준/투포인터 2024.10.12

[백준] 1043 : 거짓말 (JAVA, Union-find)

https://www.acmicpc.net/problem/1043 [풀이과정]예시를 꼭 봐야 문제 이해가 가능한 문제였다.결국은진실을 아는 사람이 한 명이라도 있으면 해당 파티의 참석자는 모두 진실을 안다고 가정하기-> 파티 참석 순서 상관없음.이 조건이었고, 정석적인 유니온 파인드 문제였다. 진실을 아는 사람들과 같은 파티에 참석한 사람들을 모두 같은 그룹으로 묶어주며 진행했다. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;import java.util.StringTokenizer;/*진실을 아..

백준/구현 2024.10.11

[백준] 12865 : 평범한 배낭 (JAVA)

https://www.acmicpc.net/problem/12865 [풀이방식]Top-down 방식으로 풀었다.DP[n][k]: n번째 물건까지 고려했을 때, 배낭의 용량이 k일 때 얻을 수 있는 최대 가치. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/*N개의 물건. 각 무게 W, 가치 VK만큼의 무게에서 최대 가치 구하기 */public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); sta..

알고리즘/DP 2024.10.08

[백준] 17070 : 파이프 옮기기 1 (JAVA)

https://www.acmicpc.net/problem/17070 [풀이과정]DFS 로 풀었다. 처음엔 파이프 길이가 2이고 벽을 긁지 말란 말에 벽과 수평으로 움직이지 말란 건가 혼란스러웠지만 그냥 오른쪽 끝 부분을 옮기면서 이동 가능 여부(빈 칸인지)만 확인하면 됐다.DP로 풀 수 있다는데 나중에.. [코드]import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/*크기가 N*N인 집파이프는 회전 가능하며 2개 칸을 차지.-, |, \ 방향 가능. 파이프는 →, ↘, ↓ 으로 이동.빈 칸만 차지하며 벽을 긁으면 안됨.회전은 45도만 가능..

백준/DFS BFS 2024.10.07
반응형