목록2024/12 (62)
넘치게 채우기
https://leetcode.com/problems/maximum-number-of-integers-to-choose-from-a-range-i/description/leetcode - Maximum Number of Intergers to Choose From a Range I문제 유형: 그리디문제 난이도: Medium 문제You are given an integer array banned and two integers n and maxSum. You are choosing some number of integers following the below rules:The chosen integers have to be in the range [1, n].Each integer can be chosen ..
https://www.acmicpc.net/problem/1141BOJ - 접두사문제 유형: 트라이, 정렬, 그리디문제 난이도: Silver I시간 제한: 2초메모리 제한: 128MB 문제접두사X 집합이란 집합의 어떤 한 단어가, 다른 단어의 접두어가 되지 않는 집합이다. 예를 들어, {hello}, {hello, goodbye, giant, hi}, 비어있는 집합은 모두 접두사X 집합이다. 하지만, {hello, hell}, {giant, gig, g}는 접두사X 집합이 아니다.단어 N개로 이루어진 집합이 주어질 때, 접두사X 집합인 부분집합의 최대 크기를 출력하시오. 입력첫째 줄에 단어의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 단어가 주어진다. 단어는 ..
https://leetcode.com/problems/move-pieces-to-obtain-a-string/description/leetcode - Move Pieces to Obtain a String문제 유형: 투 포인터, 문자열 처리, 그리디문제 난이도: Medium 문제You are given two strings start and target, both of length n. Each string consists only of the characters 'L', 'R', and '_' where:The characters 'L' and 'R' represent pieces, where a piece 'L' can move to the left only if there is a blank spa..
https://www.acmicpc.net/problem/1138BOJ - 줄 세우기문제 유형: 우선순위 큐, 위상 정렬문제 난이도: Silver II시간 제한: 2초메모리 제한: 128MB 문제N명의 사람들은 매일 아침 한 줄로 선다. 이 사람들은 자리를 마음대로 서지 못하고 오민식의 지시대로 선다.어느 날 사람들은 오민식이 사람들이 줄 서는 위치를 기록해 놓는다는 것을 알았다. 그리고 아침에 자기가 기록해 놓은 것과 사람들이 줄을 선 위치가 맞는지 확인한다.사람들은 자기보다 큰 사람이 왼쪽에 몇 명 있었는지만을 기억한다. N명의 사람이 있고, 사람들의 키는 1부터 N까지 모두 다르다.각 사람들이 기억하는 정보가 주어질 때, 줄을 어떻게 서야 하는지 출력하는 프로그램을 작성하시오. 입력첫째 줄에 사람의..
https://leetcode.com/problems/make-string-a-subsequence-using-cyclic-increments/description/leetcode - Make String a Subsequence Using Cyclic Increments문제 유형: 투 포인터, 문자열 처리문제 난이도: Medium 문제You are given two 0-indexed strings str1 and str2.In an operation, you select a set of indices in str1, and for each index i in the set, increment str1[i] to the next character cyclically. That is 'a' becomes ..
https://www.acmicpc.net/problem/1124BOJ - 언더프라임문제 유형: 수학문제 난이도: Silver I시간 제한: 2초메모리 제한: 128MB 문제자연수 X를 소인수분해하면, 곱해서 X가 되는 소수의 목록을 얻을 수 있다. 예를 들어, 12 = 2 × 2 × 3이다. 1은 소수가 아니다.어떤 수 X를 소인수분해 해서 구한 소수의 목록의 길이가 소수이면, 그 수를 언더프라임 이라고 한다. 12는 목록에 포함된 소수의 개수가 3개이고, 3은 소수이니 12는 언더프라임이다.두 정수 A와 B가 주어졌을 때, A보다 크거나 같고, B보다 작거나 같은 정수 중에서 언더프라임인 것의 개수를 구해보자. 입력첫째 줄에 두 정수 A와 B가 주어진다. 2 출력첫째 줄에 A보다 크거나 같고, B보..
https://leetcode.com/problems/adding-spaces-to-a-string/description/leetcode - Adding Spaces to a String문제 유형: 투 포인터, 문자열 처리문제 난이도: Medium 문제You are given a 0-indexed string s and a 0-indexed integer array spaces that describes the indices in the original string where spaces will be added. Each space should be inserted before the character at the given index.For example, given s = "EnjoyYourCoff..
https://www.acmicpc.net/problem/11444BOJ - 피보나치 수 6문제 유형: 피보나치 수, 분할 정복문제 난이도: Gold II시간 제한: 1초메모리 제한: 256MB 문제피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다.이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다.n=17일때 까지 피보나치 수를 써보면 다음과 같다.0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 n이 주어진다. n은 ..
https://www.acmicpc.net/problem/1105BOJ - 팔문제 유형: 수학, 그리디문제 난이도: Silver I시간 제한: 1초메모리 제한: 512MB 문제L과 R이 주어진다. 이때, L보다 크거나 같고, R보다 작거나 같은 자연수 중에 8이 가장 적게 들어있는 수에 들어있는 8의 개수를 구하는 프로그램을 작성하시오. 입력첫째 줄에 L과 R이 주어진다. L은 2,000,000,000보다 작거나 같은 자연수이고, R은 L보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. 출력첫째 줄에 L보다 크거나 같고, R보다 작거나 같은 자연수 중에 8이 가장 적게 들어있는 수에 들어있는 8의 개수를 구하는 프로그램을 작성하시오. 풀이 이 문제에서 중요한 것은, 상위 자릿수에서..
https://leetcode.com/problems/check-if-a-word-occurs-as-a-prefix-of-any-word-in-a-sentence/description/leetcode - Check If a Word Occurs As a Prefix of Any Word in a Sentence문제 유형: 문자열 처리문제 난이도: Easy 문제Given a sentence that consists of some words separated by a single space, and a searchWord, check if searchWord is a prefix of any word in sentence.Return the index of the word in sentence (1-inde..