[BOJ/플로이드 알고리즘] 백준 11404 - 플로이드 / 11780 - 플로이드 2 (Java)
·
✏️/BOJ
11404 - 플로이드https://www.acmicpc.net/problem/11404문제모든 도시 쌍 (a, b)에 대해 도시 a에서 b로 가는데 필요한 비용의 최솟값입력첫째 줄: 도시의 개수 n (2 둘째 줄: 버스의 개수 m (1 셋째 줄 ~ m+2줄: 버스의 정보버스의 시작 도시 a, 도착 도시 b, 한 번 타는데 필요한 비용 c시작 도시와 도착 도시가 같은 경우 X, 비용 (자연수) 시작 도시와 도착 도시를 연결하는 노선은 하나가 아닐 수 있음출력n개의 줄 출력i번째 줄에 출력하는 j번째 숫자: 도시i에서 j로 가는데 필요한 최소 비용만약, i에서 j로 갈 수 없는 경우 0 출력풀이플로이드 워셜 알고리즘(Floyd-Warshall Algorithm)모든 도시 쌍 (i, j) 간의 최소 이동 비..
[BOJ/Greedy] 백준 1744 - 수 묶기 (Java)
·
✏️/BOJ
1744 - 수 묶기https://www.acmicpc.net/problem/1744문제길이가 N인 수열 -> 수열의 두 수를 묶어서 그 수열의 합어떤 수를 묶으려고 할 때, 위치에 상관 X 묶을 수 있음 But, 같은 위치에 있는 수(자기자신)를 묶는 것을 불가능어떤 수를 묶게 되면, 서로 곱한 후에 더함ex. {0, 1, 2, 4, 3, 5} -> 합: 0+1+2+4+3+5 = 15But, 2와 3, 4와 5 묶으면 -> 0+1+(2*3)+(4*5) = 27 최대수열의 모든 수는 단 한번만 묶거나 아니면 묶지 않아야 함=> 수열이 주어졌을 때, 각 수를 적절히 묶었을 때 최대합?입력첫째 줄: 수열의 크기 N (N (자연수) 둘째 줄부터 N개의 줄: 수열의 각 수가 주어짐 (-1,000 출력: 합이 최..
[BOJ/Greedy] 백준 11501 - 주식 (Java)
·
✏️/BOJ
백준 11501 - 주식https://www.acmicpc.net/problem/11501문제3가지 중 한 행동을 함1. 주식을 산다2. 원하는 만큼 가지고 있는 주식을 판다3. 아무 것도 안한다=> 날 별로 주식의 가격을 알려줬을 대, 최대 이익이 얼마나 되는지?ex. 날 수: 3일/ 날 별로 주가: 10, 7, 6 -> 주가가 계속 감소 => 최대 이익: 0주가: 3, 5, 9 -> 처음 두 날에 주식을 하나씩 사고, 마지막날 다 팔아 버리면 이익: 10입력첫 줄: 테스트케이스 수 T각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 N (2 둘째 줄: 날 별 주가를 나타내는 N개의 자연수들 (공백, 날 별 주가 출력각 테스트케이스 별로 최대 이익을 나타내는 정수 출력부호 있는 64-bit 정수형으로..
[BOJ/Greedy] 백준 1541 - 잃어버린 괄호 (Java)
·
✏️/BOJ
백준 1541 - 잃어버린 괄호https://www.acmicpc.net/problem/1541문제양수, +, -, 괄호 -> 식을 만든 뒤, 괄호를 모두 지움=> 괄호를 적절히 쳐서 이 식의 최솟값 ?입력첫째 줄: 식'0' ~ '9', '+', '-' 만으로 이뤄짐, 가장 처음과 마지막 문자는 숫자연속해서 2개 이상의 연산자 X, 5자리보다 많이 연속되는 숫자 X수는 0으로 시작할 수 있음, 식의 길이 출력: 최솟값풀이식의 합이 가장 최소 -> 가장 큰 값을 빼야 함덧셈을 먼저 한 뒤 뺄셈'-' 기준으로 식을 나눔 -> 덧셈 먼저 수행 -> 뺄셈 수행코드import java.io.*;// 잃어버린 괄호public class boj_1541 { public static void main(String..
[BOJ/Greedy] 백준 2457 - 공주님의 정원 (Java)
·
✏️/BOJ
2457 - 공주님의 정원https://www.acmicpc.net/problem/2457문제총 N개의 꽃, 모두 같은 해에 피어서 같은 해에 짐하나의 꽃은 피는 날과 지는 날이 정해져 있음ex. 5/8에 피어서 6/13일 지는 꽃은: 5/8 ~ 6/12 꽃이 피어 잇고, 6/13 포함한 이후는 꽃을 볼 수 없음(올해: 4, 6, 9, 11월 - 30일, 1, 3, 5, 7, 8, 10, 12월 - 31일, 2월 - 28일)이러한 N개의 꽃들 중에서 두 조건을 만족하는 꽃 선택1. 가장 좋아하는 계절인 3/1 ~ 11/30 매일 꽃이 한 가지 이상 피어 있도록 함2. 정원이 넓지 않으므로 꽃들의 수를 가능한 적게 함입력첫째 줄: 꽃들의 총 개수 N (1 다음 N개의 줄: 각 꽃이 피는 날짜, 지는 날짜e..
[BOJ/Greedy] 백준 11399 - ATM (Java)
·
✏️/BOJ
11399 - ATMhttps://www.acmicpc.net/problem/11399문제인하은행 ATM 1대, N명의 사람들이 줄 서 있음사람은 1번 ~ N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 $P_i$분사람들이 줄을 서는 순서 -> 돈을 인출하는데 필요한 시간의 합이 달라짐ex. 총 5명, $P_1=3, P_2=1, P_3=4, P_4=3, P_5=2$ 인 경우, 1. [1, 2, 3, 4, 5] 순서로 줄을 선다면1번 사람: 3분만에 돈을 뽑을 수 있음2번 사람: 1번 사람이 돈을 뽑을 때까지 기다려야 함 -> 3 + 1 = 4분3번 사람: 3 + 1 + 4 = 8분4번 사람: 3 + 1 + 4 + 3 = 11분5번 사람: 3 + 1 + 4 + 3 + 2 = 13..
kimmeoww
'분류 전체보기' 카테고리의 글 목록 (7 Page)