Java/Java-1차캐시 19

[백준] 2293 : 동전1, 2625 : 동전 바꿔주기

- 동전 개수에 제한이 없는 경우 더보기import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { static int N; // 지폐의 금액 static int K; // 동전의 가지수 // 동전의 금액 pi와 개수 ni static int[] pi; static int[] ni; static int res; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); N = Integer..

[프로그래머스] 숫자 변환하기

문제https://school.programmers.co.kr/learn/courses/30/lessons/154538 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   코드  import java.util.*;class Solution { public int solution(int x, int y, int n) { Queue queue = new LinkedList(); boolean[] visited = new boolean[y + 1]; // 0~y 까지 queue.add(new int[]{y, 0}); visited[y] = true; ..

[프로그래머스] 주식가격

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42584 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  입출력prices [ 1, 2, 3, 2, 3]return [4, 3, 1, 1, 0]   아이디어초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요.  코드  import java.util.*;class Solution { static int N; public int[] solution(int[] price..

[백준] 2294 : 동전2

문제https://www.acmicpc.net/problem/2294   입출력3 151512 3아이디어 dp[i] = Math.min( dp[i-coins[n]] + 1, dp[n])  코드  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;public class Main { static int N, K; // N가지 종류 동전 -> 합이 K static int[] coins; public static void main(String[] args) throws IOException { Buf..

[백준] 11054 : 가장 긴 바이토닉 수열

문제https://www.acmicpc.net/problem/11054 입출력101 5 2 1 4 3 4 5 2 17아이디어 - 증가하다가 감소하는 부분 수열 1) 증가하는 부분 수열 최대 길이 LIS // 왼쪽 부터 2) 감소하는 부분 수열 최대 길이 LDS // 오른쪽부터   코드 import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer;public class Main { static int N; // 수열A의 크기 static int[] arr; // 수열 public static void main(String[] args) throws Exc..

[백준] 1043 : 거짓말

문제https://www.acmicpc.net/problem/1043   입출력 4 302 1 21 33 2 3 43아이디어파티 참여한 사람들을 그룹지어 하나의 그룹으로 취급하고진실을 알고있는 사람들도 하나의 그룹으로 취급한 뒤 파티 참석 가능 여부를 확인하기 위해 파티 i에 참석한 사람의 그룹장 == 진실을 알고 있는 사람의 그룹장 확인    코드  import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;import java.util.StringTokenizer;public class Main { static int N, M; // 사람의 수, 파티의 수 ht..

[백준] 1261 : 알고스팟

문제https://www.acmicpc.net/problem/1261  입출력3 30111111103 아이디어 - 가중치가 0 또는 1인 미로에서 최소한의 벽(1)을 부수고 목표 지점까지 가는 최단 경로를 찾는 문제1) 벽 부수는 행위 = 가중치 12) 최소 비용 갱신  코드  import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.Arrays;import java.util.PriorityQueue;import java.util.StringTokenizer;public class Main { static int M, N; // 열, 행 static int[][] box; static int EMPTY = 0, WALL..

[백준] 1504 : 특정한 최단 경로

문제 https://www.acmicpc.net/problem/1504   입출력4 61 2 32 3 33 4 11 3 52 4 51 4 42 3 7아이디어1 -> v1 -> v2 -> N혹은1 -> v2 -> v1 -> N 1) 1에서부터 v1, v2까지 거리 2) N에서부터 v1, v2까지 거리 3) v1 에서 v2까지 거리  3가지를 구해서 경로가 있는지, 경로가 있다면 거리는 얼만큼인지 확인하기  코드  import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.PriorityQueue..

[프로그래머스] 부대복귀

문제 https://school.programmers.co.kr/learn/courses/30/lessons/132266 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  입출력n : 지역 개수roads : a, b 지역 연결sources :  소스 destination : 도착지result : 결과아이디어 한 정점(destination)에서 다른 정점들까지의 거리를 구하면 된다   코드  import java.util.*;class Solution { static int[] dist; static Listadj[]; static PriorityQueue pq; // 총 지역의 수..

[백준] 14503 : 로봇청소기

문제 https://www.acmicpc.net/problem/14503   입출력   아이디어시뮬레이션 조건 잘 읽고 그대로 구현하기   코드  import java.io.BufferedReader;import java.io.FileInputStream;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { static int N, M; static int r, c, d; // 북(0) 동(1) 남(2) 서(3) static int[][] way = { { -1, 0 }, { 0, 1 }, { 1, 0 }, { 0, -1 } }; static int[][] box; static int WALL = 1, E..