본문 바로가기

[백준 / JAVA] 2467. 용액(G5) https://www.acmicpc.net/problem/2467 괜시리 브루트포스로 한번 풀어보고 싶어지는 문제이다.당연히 틀리고 min값을 이정표로 투포인터를 지정했다가 또 틀렸다. 방향성은 맞는 것 같은데 왜 틀렸는가 장정 일주일 동안 고민 끝에 min값이 아니라 이전 계산값을 기준으로 포인터를 움직여야 한다는 것을 깨달았다.  import java.io.*;import java.util.*;public class Main { static BufferedReader br; static StringTokenizer st; static StringBuilder sb; public static void main(String[] args) throws Exception { br = new Buffered..
[백준 / JAVA] 2166. 다각형의 면적(G5) https://www.acmicpc.net/problem/2166 https://ggaebap.tistory.com/140 [JAVA] 신발끈 공식좌표평면상의 좌표로 구성된 다각형의 면적을 구하는 공식이다. 좌표값이 다갹형을 구성하는 시계 또는 반시계 방향으로 주어져야 사용 가능하고 변이 교차하는 경우는 사용할 수 없어 쓰임새ggaebap.tistory.com 너 이 공식 알아? 모르면 틀려야지를 시전하는 내가 싫어하는 유형의 문제이다.   import java.io.*;import java.util.*;public class Main { static BufferedReader br; static StringTokenizer st; static StringBuilder sb; pub..
[JAVA] 신발끈 공식 좌표평면상의 좌표로 구성된 다각형의 면적을 구하는 공식이다. 좌표값이 다갹형을 구성하는 시계 또는 반시계 방향으로 주어져야 사용 가능하고 변이 교차하는 경우는 사용할 수 없어 쓰임새가 제한적이다.(다시 볼 일 없다는 뜻)   계산법은 위 그림과 같이 [{(적색 화살표의 곱의 합) - (청색 화살표의 곱의 합)} / 2] 이다. public class Main { static BufferedReader br; static StringTokenizer st; static StringBuilder sb; public static void main(String[] args) throws Exception { // 사용 예 Point[] pArr = new Point[4]; ..
[백준 / JAVA] 10942. 팰린드롬?(G4) https://www.acmicpc.net/problem/10942 이거 왜 단순구현으로 풀림? 시간초과 나오면 2차원 배열로 구간 값을 저장해서 시도했을 것 같은데 그게 정답이라 하더라도 DP라고 보기엔 애매한 느낌이다.(브루트포스 아닌가...)   import java.io.*;import java.util.*;public class Main { static BufferedReader br; static StringTokenizer st; static StringBuilder sb; public static void main(String[] args) throws Exception { br = new BufferedReader(new InputStreamReader(..
[백준 / JAVA] 1238. 파티(G3) https://www.acmicpc.net/problem/1238 문제 번역기 돌렸나? 문제 이해하는게 제일 힘들었다.문제를 다시 써 보자면 1번지 ~ n번지에 사는 사람들이 집 하나를 정해서 모였다가 다시 자기 집으로 돌아가는 최단거리가 가장 긴 놈을 찾으란 거다. (자기집에서 목적지까지 다익스트라 값 + 목적지에서 자기집까지 다익스트라 값) 해주면 된다. 플로이드 워셜 알고리즘이 더 좋을수도?  import java.io.*;import java.util.*;public class Main { static BufferedReader br; static BufferedWriter bw; static StringTokenizer st; static StringBuilder sb; public static..
[백준 / JAVA] 1916. 최소비용 구하기(G5) https://www.acmicpc.net/problem/1916 백준 플레 도전을 한 후 일주일 간 포스팅이 멈췄는데, 니가 그럼 그렇지라고 생각하겠지만 의외로 문제를 안 푼건 아니다. 못 풀었다.BFS로 풀었더니 메모리가 초과되서 DFS로 다시 풀었더니 시간이 초과되는 문제를 3번 연속으로 만나서 던졌을 뿐이다...그래도 다익스트라 새로 정리했으니 조아쓰!   문제 진짜 기본적인 다익스트라를 묻고 있다.  import java.io.*;import java.util.*;public class Main { static BufferedReader br; static BufferedWriter bw; static StringTokenizer st; static StringBuilder sb; public ..
[JAVA] 그래프와 다익스트라 DFS를 쓰면 시간 초과가 나고, BFS를 쓰면 메모리 초과가 나서 문제 분류를 보면 DP거나 다익스트라였던 적이 있는가?고통받은 김에 정리해봤다. class Graph { Deque[] dqArr; // 연결 노드를 저장할 자료구조 int nodeCount; // 노드 개수 public Graph(int nodeCount) { // 그래프 선언 this.nodeCount = nodeCount; dqArr = new Deque[nodeCount + 1]; for (int i = 0; i (); } void addEdge(int start, int dest, int cost) { // 그래프에 간선 추가 dqArr[start].add(new Node(dest, cost)); } ..
[백준 / JAVA] 2638. 치즈(G3) https://www.acmicpc.net/problem/2638 bfs한번 사방탐색 한번이면 풀 수 있는 데다가 맵 크기도 작아서 골드 3 답지 않은 문제이다.  import java.io.*;import java.util.*;public class Main { static BufferedReader br; static BufferedWriter bw; static StringTokenizer st; static StringBuilder sb; public static void main(String[] args) throws Exception { br = new BufferedReader(new InputStreamReader(System.in)); st = new StringTokenizer(br..