분류 전체보기 75

[백준] 17135 : 캐슬 디펜스

문제https://www.acmicpc.net/problem/17135   입출력   아이디어M개의 열 중 3개 궁수 위치 선택 시뮬레이션 진행 1) N번의 턴을 진행하여 적들이 아래로 내려옴 (적이 성에 오면 게임이 끝난다 이런 말이 없으므로 무조건 N번 진행)2) 궁수가 공격할 적 찾기 (여러 궁수가 동일한 적을 공격할 수 있음)3) 적 제거  + 개수 세기 4) 적 이동   코드  import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util...

Java 2025.03.07

[백준] 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; // 총 지역의 수..

[백준] 19942: 다이어트

문제  https://www.acmicpc.net/problem/19942  입출력 6100 70 90 1030 55 10 8 10060 10 10 2 7010 80 50 0 5040 30 30 8 6060 10 70 2 12020 70 50 4 4 1342 4 6아이디어 - 백트래킹 1) 선택할지 말지 결정하는 현 상태를 표시하는 어떤값 (여기선 i )2) 선택여부에 따라 변화는 값 (여기선 str)이 2가지를 잘 파라미터로 넘기는게 중요했다  문자열A가 사전순으로 더 빠른지 확인하기 위해 문자열A.compareTo(문자열B) 코드  import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.StringTokenizer..

Java 2025.03.03

[백준] 1799 : 비숍

문제https://www.acmicpc.net/problem/1799    입출력51 1 0 1 10 1 0 0 01 0 1 0 11 0 0 0 01 0 1 1 1 7아이디어 - 백트래킹 : 많은 경우의 수를 어떻게 줄일 것인가 1) 체스판에서 흑/백 칸을 나누어 백트래킹 2) 대각선 x - y, x + y 충돌 체크 : 대각선이 겹치지 않도록 가지치기 3) 최적의 비숍 배치를 구한 후, 합산 : 흑색 칸에서 최대 비숍 수 + 백색 칸에서 최대 비숍 수 코드 - 정답 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.util...

Java 2025.03.03

[백준] 1949 : 우수마을

문제https://www.acmicpc.net/problem/1949    입출력71000 3000 4000 1000 2000 2000 70001 22 34 34 56 26 7 14000아이디어 다이나믹 프로그래밍 in tree  코드  import java.io.BufferedReader;import java.io.FileInputStream;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.List;import java.util.StringTokenizer;public class Main { static int N; // 1 - N까지 번호, Tree구조 방향 X static int[] pplCnts; // 우수주..

Java 2025.02.26

[프로그래머스] 큰 수 만들기

문제https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   아이디어Stack 사용    코드  import java.io.*;import java.util.*;class Solution { static int N, K; static int max; static Stack stack; static char[] arr; public String solution(String number, int k) { arr = number.toCharArray(); ..

Java 2025.02.26