728x90
반응형

백준 알고리즘 13

백준 알고리즘 [해시, BFS] 퍼즐_1525_골드2

문제백준 알고리즘 [백트래킹] N과 M (2)_문제번호_난이도 체감 난이도골드1 문제 풀이 소감 BFS & HashMap을 이용해서 적절한 사용 코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder start = new StringBuilder(); // 퍼즐 초기 상태 입력받기 for (int i = 0; i visited = new H..

알고리즘/해시 2024.12.12

백준 알고리즘 [백트래킹] 나는야 포켓몬 마스터 이다솜_1620_실버4

문제일단 네가 현재 가지고 있는 포켓몬 도감에서 포켓몬의 이름을 보면 포켓몬의 번호를 말하거나, 포켓몬의 번호를 보면 포켓몬의 이름을 말하는 연습을 하도록 하여라. 나의 시험을 통과하면, 내가 새로 만든 도감을 주도록 하겠네. 체감 난이도실버 5 문제 풀이 소감문제만 길고.... 쉬움 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.StringTokenizer;/** * */public class Main { static int N,M; static HashMap HashA = new HashMap(); ..

알고리즘/해시 2024.12.01

백준 알고리즘 [해시] 문자열집합_14425_실버5

문제백준 알고리즘 [백트래킹] N과 M (2)_문제번호_난이도 체감 난이도실버 5 문제 풀이 소감쉬움... 완벽하게 일치하는 문자열만 찾기 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.StringTokenizer;/** * 총 N개의 문자열로 이루어진 집합 S가 주어진다. * 입력으로 주어지는 M개의 문자열 중에서 집합 S에 포함되어 있는것은 몇개인가 */public class Main { static int N,M; static HashSet HashA = new HashSet(); static..

알고리즘/해시 2024.12.01

백준 알고리즘 [해시] 숫자카드_10815_실버5

문제백준 알고리즘 [백트래킹] N과 M (2)_문제번호_난이도 체감 난이도실버 5 문제 풀이 소감매우 쉬움 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashSet;import java.util.StringTokenizer;/** * 숫자 카드는 정수 하나가 적혀져 있고 * 상근이는 숫자카드 N개를 가지고 있다. * 정수 M개가 주어졌을 떄 상근이가 가지고 있는지 아닌지 구하는 프로그램 */public class Main { static int N,M; static HashSet HashA = new HashSet(); public sta..

알고리즘/해시 2024.12.01

백준 알고리즘 [해시] 숫자카드 2_10816_실버4

문제숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오. 체감 난이도실버4 문제 풀이 소감HashMap 을 제대로 활용할 수 있는지getOrDefault 사용법을 제대로 숙지할 수 있음 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.HashMap;import java.util.HashSet;import java.util.LinkedHashMap;import java.util.StringTokenizer;/*..

알고리즘/해시 2024.12.01

알고리즘 기법 [부분 배열 정렬]

기법부분 배열 정렬 체감 난이도실버 3 설명ListA 의 startIdx부터 endIdx-1까지의 부분 배열을 정렬합니다.Arrays.sort(ListA, startIdx, endIdx)[ListA]정렬하고자 하는 배열[startIdx]부분 배열의 시작 인덱스입니다. 해당 인덱스는 포함됩니다.[endIdx]부분 배열의 끝 인덱스입니다. 이 값은 포함되지 않으며, endIdx - 1이 실제로 정렬되는 마지막 인덱스입니다.예를 들어, startIdx = 2, endIdx = 5이면, 인덱스 2, 3, 4의 값만 정렬됩니다. 장점기존 배열의 변경: Arrays.sort는 배열을 직접 변경하는 방법입니다.즉, 배열을 새로 반환하는 것이 아니라, 기존 배열에서 지정된 범위만 정렬하여 결과를 제공합니다.이 방식은 ..

백준 알고리즘 [이분탐색] 부분수열의 합 2_1208_골드1

문제N개의 정수로 이루어진 수열이 있을 때, 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하시오. 체감 난이도골드3 문제 풀이 소감- 비트 연산이 무엇인지 알아 볼 것- 같은 합의 값이 여러 개 나올 수 있으니, upper lower 각각해서 count 할 것 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;/** * N개의 정수로 이루어진 수열이 있음 * 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 던한 값이 * S가 되는 경우의 수를 구하시오 */public class Main { ..

백준 알고리즘 [분할정복] 치킨 TOP N_11582_실버4

문제인하대 주변 치킨칩의 맛의 정도를 측정해 수치화하는 동아리 C.T.P(Chicken Tastes Perfect)의 회장 민호는 치킨집의 맛의 수치를 감소하지 않는 순으로 정렬을 하고 싶었다. 하지만 치킨집이 너무 많아 혼자 정렬을 하기에는 많은 시간이 걸려 C.T.P 회원들을 활용하기로 했다. 치킨집이 N개 있다고 가정을 하자. N개의 치킨의 수치를 무작위로 놓은 뒤 N/2명의 C.T.P 회원이 차례대로 2개의 치킨집을 선택해  정렬을 한다. 그 뒤 N/4명이 차례대로 바로 전 단계의 사람이 정렬한 두 개의 그룹을 차례대로 선택 하여 치킨집을 정렬을 한다. 계속해서 N/8명, N/16명이 정렬을 진행하다가 마지막 사람이 두 개의 정렬된 그룹을 합병하여 작업을 완료한다.예를 들어 8개의 치킨집의 점수가..

백준 알고리즘 [분할정복] 쿼드트리_1992_실버1

문제흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단히 표현할 수 있다.주어진 영상이 모두 0으로만 되어 있으면 압축 결과는 "0"이 되고, 모두 1로만 되어 있으면 압축 결과는 "1"이 된다. 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇게 4개의 영상으로 나누어 압축하게 되며, 이 4개의 영역을 압축한 결과를 차례대로 괄호 안에 묶어서 표현한다위 그림에서 왼쪽의 영상은 오른쪽의 배열과 같이 숫자로 주어지며, 이 영상을 쿼드 ..

백준 알고리즘 [분할정복] 색종이 만들기_2630_실버2

문제아래 과 같이 여러개의 정사각형칸들로 이루어진 정사각형 모양의 종이가 주어져 있고, 각 정사각형들은 하얀색으로 칠해져 있거나 파란색으로 칠해져 있다. 주어진 종이를 일정한 규칙에 따라 잘라서 다양한 크기를 가진 정사각형 모양의 하얀색 또는 파란색 색종이를 만들려고 한다.전체 종이의 크기가 N×N(N=2k, k는 1 이상 7 이하의 자연수) 이라면 종이를 자르는 규칙은 다음과 같다.전체 종이가 모두 같은 색으로 칠해져 있지 않으면 가로와 세로로 중간 부분을 잘라서 의 I, II, III, IV와 같이 똑같은 크기의 네 개의 N/2 × N/2색종이로 나눈다. 나누어진 종이 I, II, III, IV 각각에 대해서도 앞에서와 마찬가지로 모두 같은 색으로 칠해져 있지 않으면 같은 방법으로 똑같은 크기의 네 ..

728x90
반응형