본문 바로가기
728x90

programming/알고리즘 풀이33

[백준] 11659.구간 합 구하기 4 (실버3) [백준] 11659.구간 합 구하기 4 (실버3) 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net [문제] 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. [입력] 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. [출력] 총 M개의 줄에 입력으로 주어진 i번째 수부터 j번째 수까지.. 2023. 3. 26.
[leetcode] 42. Trapping Rain Water [leetcode] 42. Trapping Rain Water Trapping Rain Water - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com [문제] Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining. [입출력] Input: height = [0,1,0.. 2021. 10. 6.
[leetcode] 49. Group Anagrams [leetcode] 49. Group Anagrams Group Anagrams - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com [문제] Given an array of strings strs, group the anagrams together. You can return the answer in any order. An Anagram is a word or phrase formed by rearranging the letters of a different w.. 2021. 10. 6.
[leetcode] 1. Two Sum [leetcode] 1. Two Sum Two Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com [문제] Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may.. 2021. 10. 2.
[백준(Baekjoon)] 14235. 크리스마스 선물 [백준(Baekjoon)] 14235. 크리스마스 선물 14235번: 크리스마스 선물 크리스마스에는 산타가 착한 아이들에게 선물을 나눠준다. 올해도 산타는 선물을 나눠주기 위해 많은 노력을 하고 있는데, 전세계를 돌아댕기며 착한 아이들에게 선물을 나눠줄 것이다. 하지만 www.acmicpc.net [입력] 첫 번째 줄에서는 아이들과 거점지를 방문한 횟수 n이 주어진다.(1≤n≤5,000) 다음 n줄에는 a가 들어오고, 그 다음 a개의 숫자가 들어온다. 이는 거점지에서 a개의 선물을 충전하는 것이고, 그 숫자들이 선물의 가치이다. 만약 a가 0이라면 거점지가 아닌 아이들을 만난 것이다. 선물의 가치는 100,000보다 작은 양의 정수이다.(1≤a≤100) [출력] a가 0일 때마다, 아이들에게 준 선물의 .. 2021. 8. 27.
[백준(Baekjoon)] 1260. DFS와 BFS [백준(Baekjoon)] 1260. DFS와 BFS 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net [입력] 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다. [출력] 첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 B.. 2021. 8. 26.
[백준(Baekjoon)] 2257. 화학식량 [백준(Baekjoon)] 2257. 화학식량 2257번: 화학식량 첫째 줄에 화학식이 주어진다. 화학식은 H, C, O, (, ), 2, 3, 4, 5, 6, 7, 8, 9만으로 이루어진 문자열이며, 그 길이는 100을 넘지 않는다. www.acmicpc.net [입력] 첫째 줄에 화학식이 주어진다. 화학식은 H, C, O, (, ), 2, 3, 4, 5, 6, 7, 8, 9만으로 이루어진 문자열이며, 그 길이는 100을 넘지 않는다. [출력] 첫째 줄에 화학식량을 출력한다. 분자량이 10,000이 넘는 고분자는 입력으로 주어지지 않는다. [풀이] 각 화학식을 H -> 1 C -> 12 O -> 16 으로 변환해주어 계산해주는 문제이다. 위 문자와 숫자를 HashMap을 사용하여 저장해주었다. 스택을 .. 2021. 8. 25.
[백준(Baekjoon)] 1759. 암호 만들기 [백준(Baekjoon)] 1759. 암호 만들기 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net [입력] 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. [출력] 각 줄에 하나씩, 사전식으로 가능성 있는 암호를 모두 출력한다. [풀이] 우선 C개의 문자열에서 L개의 문자를 택하여 암호를 만드는 방식이라 순열을 사용했다. 순열 사용하여 암호를 만들면서 암호길이가 2이상일 경우 .. 2021. 8. 24.
[백준(Baekjoon)] 17086. 아기 상어 2 [백준(Baekjoon)] 17086. 아기 상어 2 17086번: 아기 상어 2 첫째 줄에 공간의 크기 N과 M(2 ≤ N, M ≤ 50)이 주어진다. 둘째 줄부터 N개의 줄에 공간의 상태가 주어지며, 0은 빈 칸, 1은 아기 상어가 있는 칸이다. 빈 칸의 개수가 한 개 이상인 입력만 주어진다. www.acmicpc.net [입력] 첫째 줄에 공간의 크기 N과 M(2 ≤ N, M ≤ 50)이 주어진다. 둘째 줄부터 N개의 줄에 공간의 상태가 주어지며, 0은 빈 칸, 1은 아기 상어가 있는 칸이다. 빈 칸의 개수가 한 개 이상인 입력만 주어진다. [출력] 첫째 줄에 안전 거리의 최댓값을 출력한다. [풀이] 문제를 보자마자 BFS가 생각났는데 변형하는 과정에서 조금 버벅였다. 8방탐색하며 거리마다 1씩 더.. 2021. 8. 24.
728x90