| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- C언어
- C
- 한정 분기
- 페이코 초대코드
- spring
- Java
- 스프링
- 플러터 개발환경 설정
- php 프로그래밍 입문 예제
- 플러터
- 페이코 친구코드
- php 프로그래밍 입문 문제풀이
- php
- JAVA SPRING
- php 프로그래밍 입문 3판
- 파이썬
- php 프로그래밍 입문 연습문제
- php 프로그래밍
- 배열
- 페이코 추천인코드
- programmers
- 자바
- php 프로그래밍 입문
- SWEA
- php 프로그래밍 입문 솔루션
- 최단 경로
- Flutter
- 자바 스프링
- 페이코 추천인
- 백준
- Today
- Total
목록분류 전체보기 (594)
ImJay
[BOJ/Java] 1074. Z 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net 문제 해석 이 문제는 2의 거듭제곱으로 정의된 2차원 배열에서 특정 위치의 방문 순서를 Z-모양 순회로 찾는 것이 목표다. Z-모양 순회는 배열을 4분할하여 각 분할을 재귀적으로 순회하는 방식으로 진행된다. 풀이 과정 제출된 Java 코드는 분할 정복 알고리즘을 활용하여 주어진 위치 (r, c)의 방문 순서를 계산한다. 큰 배열을 작은 단위로 분할하면서 해당 위치가 포함된 분할만을 추가로 탐색하는 방식을 사용한다. 데이..
[BOJ/Java] 1992. 쿼드트리 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1 ≤ N ≤ 64의 범위를 가진다. 두 번째 줄부터는 길이 N의 문자열이 N개 들어온다. 각 문자열은 0 또 www.acmicpc.net 문제 해석 이 문제는 2차원 배열에 저장된 흑백 이미지를 쿼드트리 방식으로 압축하는 문제다. 쿼드트리는 2차원 공간을 4분할하여, 각 구역이 모두 같은 값으로 이루어져 있다면 해당 값을 사용하고, 그렇지 않다면 더 작은 구역으로 나누어 재귀적으로 분석하는 압축 방식이다. 각 구역이 전부 0 또는 1인 경우에는 해당 숫자를 출력하고, 섞여 있는 경우에는 괄호로 묶어 각 사분면의 결과를 표시한다. 풀이 과정 제출된..
[BOJ/Java] 3109. 빵집 3109번: 빵집 유명한 제빵사 김원웅은 빵집을 운영하고 있다. 원웅이의 빵집은 글로벌 재정 위기를 피해가지 못했고, 결국 심각한 재정 위기에 빠졌다. 원웅이는 지출을 줄이고자 여기저기 지출을 살펴보던 www.acmicpc.net 문제 해석 이 문제에서는 빵집을 기점으로 여러 파이프라인을 연결하여 최대한 많은 가정에 도달하는 것이 목표다. 파이프라인은 상단, 중앙, 하단 방향으로 연결할 수 있으며, 연결 과정에서 장애물을 피해야 한다. 이 문제는 가능한 많은 파이프라인을 설치하는 최적의 방법을 찾는 것을 요구한다. 풀이 과정 제출된 Java 코드는 깊이 우선 탐색(DFS)를 활용하여 각 가능한 경로를 탐색하고, 파이프라인을 설치한다. 이 탐색은 모든 가능한 경로를 고려..
[JUNGOL/Java] 2097. 지하철 JUNGOL code_blocks 코드 보기 jungol.co.kr 문제 해석 이 문제는 주어진 도시의 지하철 경로 중 특정한 도시에서 목적지 도시까지 가는 최소 비용 경로를 찾는 것이다. 이를 위해 주어진 인접 행렬을 이용하여 그래프의 최단 경로를 찾는 알고리즘이 요구된다. 풀이 과정 제출한 코드는 DFS(깊이 우선 탐색)를 이용하여 가능한 모든 경로를 탐색하고, 그 중에서 최소 비용을 갖는 경로를 찾아내는 접근 방식을 사용하고 있다. dfs 함수는 현재 노드 인덱스와 방문한 노드들을 표시하는 비트 마스크를 인자로 받으며, 모든 가능한 경로를 재귀적으로 탐색한다. graph: 각 도시간 이동 비용이 저장된 2차원 배열 dfs 함수: 현재 노드와 방문한 노드들의..
[JUNGOL/Java] 1828. 냉장고 JUNGOL code_blocks 코드 보기 jungol.co.kr 문제 해석 이 문제에서는 여러 화학 물질이 정해진 온도 범위 내에서 보관되어야 한다. 각 화학 물질은 최저 및 최고 보관 온도가 주어지며, 가능한 적은 수의 냉장고를 사용하여 모든 화학 물질을 안전하게 보관해야 한다. 각 냉장고는 하나의 온도 범위만을 가지며, 이 범위는 하나 이상의 화학 물질을 포함할 수 있다. 풀이 과정 제출된 Java 코드는 화학 물질을 최고 온도 기준으로 정렬한 뒤, 가장 낮은 최고 온도를 가진 화학 물질부터 시작하여 이 물질과 겹치는 모든 물질을 하나의 냉장고로 처리하는 그리디 알고리즘을 사용한다. 각 화학 물질은 Chemical 클래스로 표현되며, 이 클래스는 두 물질..
[SWEA/Java] 6808. 규영이와 인영이의 카드게임 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제 해석 규영이와 인영이는 각각 9장의 카드를 가지고 게임을 한다. 이 게임에서는 총 18장의 카드가 사용되며, 각 카드에는 1부터 18까지의 숫자가 적혀 있다. 규영이의 카드는 입력으로 주어지며, 인영이는 남은 카드를 가진다. 이 게임에서 각 턴에 두 사람은 자신의 카드 중 하나를 내고, 더 높은 숫자의 카드를 낸 사람이 점수를 얻는다. 이 점수는 두 카드의 숫자를 합한 값이다. 모든 카드가 사용될 때까지 게임을 계속하며, 게임이 끝난 후 더 많은 점수를 획득한 사람이 승리한다. 이 문제에서는 규영이와..
[BOJ/Java] 16435. 스네이크버드 16435번: 스네이크버드 첫 번째 줄에 과일의 개수 N (1 ≤ N ≤ 1,000) 과 스네이크버드의 초기 길이 정수 L (1 ≤ L ≤ 10,000) 이 주어집니다. 두 번째 줄에는 정수 h1, h2, ..., hN (1 ≤ hi ≤ 10,000) 이 주어집니다. www.acmicpc.net 문제 해석 이 문제에서는 스네이크버드와 여러 개의 과일이 주어지며, 스네이크버드의 길이를 최대로 늘리는 것이 목표이다. 스네이크버드는 자신의 길이 이하 높이의 과일을 먹을 수 있으며, 과일을 먹을 때마다 길이가 1 증가한다. 과일의 위치(높이)는 무작위로 주어진다. 풀이 과정 io 메소드에서 입력을 받아 과일의 높이를 우선순위 큐에 저장한다. 이를 통해 가장 낮은 과일..
[BOJ/Java] 3040. 백설 공주와 일곱 난쟁이 3040번: 백설 공주와 일곱 난쟁이 매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다. www.acmicpc.net 문제 해석 이 문제는 9명의 난쟁이 중 진짜 일곱 난쟁이를 찾아내는 문제로, 진짜 일곱 난쟁이의 모자에 쓰여 있는 숫자의 합이 정확히 100이 되어야 한다. 우리는 9명 중에서 7명을 선택해 그 합이 100이 되는 조합을 찾아내야 한다. 풀이 과정 제출된 Java 코드는 조합을 사용하여 문제를 해결한다. 9명의 난쟁이 중 7명을 선택하는 모든 조합을 생성하고, 선택된 난쟁이들의 숫자 합이 100이 ..
[BOJ/Java] 17406. 배열 돌리기 4 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 www.acmicpc.net 문제 해석 N x M 크기의 배열에서 특정 연산을 K번 수행할 수 있다. 연산은 배열의 부분을 회전시키는 것이며, 목표는 모든 연산을 수행한 후 배열의 각 행의 합 중 최소값을 찾는 것이다. 풀이 과정 io 메소드는 입력을 받아 초기 배열 상태와 회전 연산을 저장한다. sol 메소드에서는 주어진 회전 연산의 모든 순열을 생성하고(permutation 메소드), 각 순열에 대해 배열을 회..
[BOJ/Java] 1931. 회의실 배정 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 문제 해석 이 문제는 회의실 한 개를 사용할 때 주어진 회의 목록 중에서 최대한 많은 회의를 배정하는 문제이다. 각 회의는 시작 시간과 종료 시간이 주어지며, 회의는 종료 시간과 동시에 다른 회의가 시작될 수 있다. 주어진 회의를 최적으로 배정해야 하며, 회의의 최대 개수를 반환해야 한다. 풀이 과정 제출된 Java 코드는 우선순위 큐(PriorityQueue)를 사용하여 회의를 종료 시간에 따라 정렬하고, 회의가 동일한 종료 시간을 가지면 시작 시간에 따라 정렬한다. 이러한 정렬은 각 회의를 최대한 겹치지 않게 배정하기 위해 사용된다..