알고리즘
-
BOJ 1600. 말이 되고픈 원숭이알고리즘 2024. 9. 5. 10:28
1. 문제 요약 어라!동물원에서 원숭이가 한 마리 탈출했다. 그 녀석은 이상한 꿈이 있었는데…바로 말(Horse)이 되고 싶었다는 것 ! 포기란 배추 셀 때나 하는 말(Talk) 이었던 원숭이는 말을 따라 움직여 보기로 했다.말은 다음과 같이 이동할 수 있으며, 장애물을 뛰어넘을 수 있다. 어라근데 원숭이가 착각까지 하고 있다. 원숭이는 능력이 부족해서 K번만 말처럼 움직일 수 있고, 그 외에는 인접한 칸으로만 이동할 수 있다.원숭이는 여행을 떠난다. 왼쪽 위 → 오른쪽 아래까지 이동하고자 한다. 👿 원숭이가 최소한의 동작으로 도착점까지 갈 수 있는 방법을 알아내자! 👿 2. 문제 입출력입력값원숭이의 동작 수의 최솟값 : K격자판의 크기 : W, H격자판의 상태 ( 0은 평지, 1은 장애물 )14 ..
-
SWEA 1952. 수영장알고리즘 2024. 9. 5. 10:23
1. 문제 요약수영장을 이용하는 👨🏻윤서희 프로.지출을 줄이고자 내년 1년 동안 각 달의 수영장 이용 계획을 세우려 한다.1년에 최대 300원인데? 💡 이용권 종류1일 이용권1달 이용권3달 이용권1년 이용권 👿 가장 적은 비용으로 수영장을 이용할 수 있는 방법은? 👿 2. 문제 입출력입력값테스트 케이스 수 : T1일 이용권 요금, 1달 이용권 요금, 3달 이용권 요금, 1년 이용권 요금1월 ~ 12월 이용 계10 // 총 테스트 케이스 개수 T = 10 10 40 100 300 // 첫 번째 테스트 케이스, 이용권 가격들 0 0 2 9 1 5 0 0 0 0 0 0 // 12개월 이용 계획10 100 50 300 // 두 번째 테스트 케이스, 이용권 가격들0 0 0 0 0 0 ..
-
BOJ 1753. 최단 거리알고리즘 2024. 9. 3. 11:25
1. 문제 요약👿 방향 그래프가 주어지면, 주어진 시작점에서 다른 모든 정점으로의 최단 경로를 구하시오 👿 2. 문제 입출력입력값정점의 개수 V, 간선의 개수 E시작 정점 번호 K간선 나타내는 (u, v, w)u에서 v로 가는 가중치 w인 간선5 615 1 11 2 21 3 32 3 42 4 53 4 6출력값i번째 줄에 i번 정점으로의 최단 경로의 경로값 출력시작점 자신은 0으로 출력경로가 없다면 INF 출력0237INF 3. 입력 제한 크기시간 제한 : 1초 -1 ≤ V (정점 개수) ≤ 20,0001 ≤ E (간선 개수) ≤ 300,0001 ≤ K (시작 정점 번호) ≤ Vu ≠ vw ≤ 10 (자연수) 4. 아이디어 (접근법, 그림, 시각화)다익스트라 알고리즘 5. 시간 복잡도우선순위 큐에 ..
-
BOJ 3124. 최소 스패닝 트리알고리즘 2024. 9. 3. 11:12
1. 문제 요약최소 스패닝 트리= 주어진 그래프의 모든 정점들을 연결하는 부분 그래프 중에서 그 가중치의 합이 최소인 트리 👿 그래프가 주어졌을 때, 그 그래프의 최소 스패닝 트리를 구하여라 👿 2. 문제 입출력입력값테스트 케이스 수 : T정점의 개수 N, 간선의 개수 ME개의 줄에 걸쳐 간선 정보 : A, B, C13 31 2 12 3 21 3 3출력값최소 스패닝 트리의 가중치#1 3 3. 입력 제한 크기시간 제한 : 10개 테스트 케이스 20초1 ≤ V (정점 개수) ≤ 100,0001 ≤ E (r간선 개수) ≤ 200,000가중치 : 음수 가능, 절대값 1,000,000 이하 4. 아이디어 (접근법, 그림, 시각화)프림 알고리즘임의 정점 하나 선택선택 정점과 인접하는 정점 중 가장 작은 가중치의..
-
SWEA 1267. 작업순서 (Java)알고리즘 2024. 8. 28. 16:56
1. 문제 요약해야 할 작업이 V개나 있다 😣작업들에는 선행 관계가 있어, 어떤 작업은 특정 작업이 끝나야 시작할 수 있다.선행 관계는 방향 그래프로 표현된다.(단, 사이클은 존재하지 않는다.) 🚴🏻❌👿 일을 끝낼 수 있는 작업 순서를 찾아라 👿 2. 문제 입출력입력값테스트 케이스 수 : 10개로 고정⚠️그래프 정점의 개수 V, 간선의 개수 EE개의 간선9 9 // 정점 개수, 간선 개수4 1 1 2 2 3 2 7 5 6 7 6 1 5 8 5 8 9 // E개의 간선5 41 2 2 3 4 1 1 5...출력값일을 끝낼 수 있는 작업 순서여러개일 경우, 하나만 제시하면 됩니다.#1 8 9 4 1 5 2 3 7 6#2 4 1 2 3 5... 3. 입력 제한 크기시간 제한 : 10개 테스트 케이스 2..
-
순열 조합알고리즘 2024. 8. 18. 01:19
순열서로 다른 것들 중 몇 개를 뽑아서 한 줄로 나열하는 것서로 다른 n개 중 r개 택하면nPr 조합서로 다른 n개의 원소 중 r개를 순서 없이 고르면nCr = n1 / (n - r)! r! package problems;import java.util.Arrays;import java.util.Scanner;public class Main { static int N, totalCnt; static int[] numbers; public static void main(String[] args) { Scanner sc = new Scanner(System.in); N = sc.nextInt(); // 주시위 던진 횟수 (1 6ㅠ3 : 6^3 = 216 private ..
-
알고리듬도 리듬이다알고리즘 2024. 8. 17. 21:46
if visited[3]:if (visited[3]) {} & : 둘 다 1일때만0000101010001100&00001000 visit & (1 ????1???00001000& 연산 하면, visit의 3번 비트가 1이라면 00001000이 나오고, 0이라면 00000000이 나올 것 ^ :xor서로 다른 값이면 1, 같은 값이면 00000101010001100^10000110 특정 비트를 토글하는 연산 if ((visit & (1 visit ^= 1 } a = 00001010~a = 11110101 1 ~(1 visit &= ~(1
-
백준 #1260 - DFS와 BFS (Java)알고리즘 2024. 7. 31. 19:13
그래프 탐색 --> 못함자바 --> 못함 그렇지만 해야지 공부해야지 https://xuxi-log.tistory.com/72 백준 #1260 - DFS와 BFS문제 그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할xuxi-log.tistory.com 이 때 파이썬으로 풀었던 문제 복습 후자바로 다시 짜보았다. package algorithm;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;impor..