일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Dijkstra
- dp
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- 파이썬 #백준 #알고리즘 #코딩테스트
- PYTHON
- 자바 #java
- css #생활코딩 #웹
- 알고리즘
- 파이썬
- java #자바
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- 투포인터
- 코딩테스트
- DFS
- 백준 #알고리즘 #파이썬 #코딩테스트
- 다이나믹프로그래밍
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- 백준 #파이썬 #알고리즘 #코딩테스트
- java #자바 #생활코딩
- java #자바 #나동빈
- react #리액트 #동빈나 #나동빈 #유튜브강의
- BFS
- 백트랙킹
- 다익스트라
- java #자바 #동빈나
- react #리액트 #동빈나
- 프로그래머스
- 백준
- css #웹 #생활코딩
- 재귀
- Today
- Total
목록
728x90
백준
728x90
(117)
커리까지
문제 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. 입력 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000) 출력 첫째 줄에 수열 A의 가장 긴 증가하는 부분 수열의 길이를 출력한다. 예제 입력 1 6 10 20 10 30 20 50예제 출력 1 4제출 답안 num[i]랑 num[j]를 비교해서 dp값을 업데이트 하면 된다. num[i]가 크면 갱신해도 되니 지금까지의 저장된 값과..
문제 45656이란 수를 보자. 이 수는 인접한 모든 자리의 차이가 1이다. 이런 수를 계단 수라고 한다. N이 주어질 때, 길이가 N인 계단 수가 총 몇 개 있는지 구해보자. 0으로 시작하는 수는 계단수가 아니다. 입력 첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 100보다 작거나 같은 자연수이다. 출력 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. 예제 입력 1 1예제 출력 1 9예제 입력 2 2예제 출력 2 17제출 답안 https://cotak.tistory.com/12 위 블로그를 보고 배웠다. 처음에 범위를 어떻게 설정해야 하는지 헷갈렸다. 자세히 생각해보니 0 ~ 9까지를 기준으로 둬야 문제처럼 숫자열을 만들 수 있다. ''' 1. 아이..
문제 상근이와 선영이는 동시에 가지고 있는 CD를 팔려고 한다. CD를 몇 개나 팔 수 있을까? 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 상근이가 가지고 있는 CD의 수 N, 선영이가 가지고 있는 CD의 수 M이 주어진다. N과 M은 최대 백만이다. 다음 줄부터 N개 줄에는 상근이가 가지고 있는 CD의 번호가 오름차순으로 주어진다. 다음 M개 줄에는 선영이가 가지고 있는 CD의 번호가 오름차순으로 주어진다. CD의 번호는 십억을 넘지 않는 양의 정수이다. 입력의 마지막 줄에는 0 0이 주어진다. 상근이와 선영이가 같은 CD를 여러장 가지고 있는 경우는 없다. 출력 두 사람이 동시에 가지고 있는 CD의 개수를 출력한다. 예제 입력 1 3 3 1 2 3 1 2 ..
문제 싫은데요 햄스터는 콩쥐를 위해서 깨진 독을 자기 몸으로 막으려고 한다. 햄스터는 유체라 자기 몸을 그림처럼 늘릴 수 있다. 또, 햄스터는 유체라 자기 몸을 아래 그림처럼 늘릴 수도 있다. 하지만 햄스터의 부피는 M$M$으로 정해져 있기 때문에, 늘릴 수 있는 크기에는 한계가 있다. 독에 왼쪽부터 N$N$개의 구멍이 일렬로 뚫려 있고, i$i$번째 구멍의 크기 Ai$A_i$가 주어진다. 햄스터는 구멍을 막기 위해 정확히 그 크기만큼의 부피를 소모해야 한다. 싫은데요 햄스터는 콩쥐에게 최대한 도움이 되길 원하기 때문에 자기 부피를 가능한 한 많이 활용하길 원한다. 어떻게 막으면 햄스터가 원하는 방식으로 독을 막는지 구해서 알려주자. 아무리 햄스터가 유체라고 하지만 몸을 둘로 나눌 수는 없기 때문에 막는..
문제 길이가 N$N$인 수열 S$S$가 있다. 수열 S$S$는 1 이상인 정수로 이루어져 있다. 수열 S$S$에서 원하는 위치에 있는 수를 골라 최대 K$K$번 삭제를 할 수 있다. 예를 들어, 수열 S$S$가 다음과 같이 구성되어 있다고 가정하자. 수열 S : 1 2 3 4 5 6 7 8수열 S$S$에서 4번째에 있는 4를 지운다고 하면 아래와 같다. 수열 S : 1 2 3 5 6 7 8 수열 S$S$에서 최대 K$K$번 원소를 삭제한 수열에서 짝수로 이루어져 있는 연속한 부분 수열 중 가장 긴 길이를 구해보자. 입력 수열 S$S$의 길이 N$N$와 삭제할 수 있는 최대 횟수인 K$K$가 공백으로 구분되어 주어진다. 두 번째 줄에는 수열 S$S$를 구성하고 있는 N$N$개의 수가 공백으로 구분되어 주어..
문제 올바른 배열이란 어떤 배열 속에 있는 원소 중 5개가 연속적인 것을 말한다. (연속적인 것이란 5개의 수를 정렬했을 때, 인접한 수의 차이가 1인 것을 말한다.) 예를 들어 배열 {6, 1, 9, 5, 7, 15, 8}은 올바른 배열이다. 왜냐하면 이 배열 속의 원소인 5, 6, 7, 8, 9가 연속이기 때문이다. 배열이 주어지면, 이 배열이 올바른 배열이 되게 하기 위해서 추가되어야 할 원소의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 배열의 크기 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 배열의 원소가 한 줄에 하나씩 주어진다. 원소는 1,000,000,000보다 작거나 같은 음이 아닌 정수이다. 배열에 중복되는 수는 없다. 출력 첫째 줄에 입력..
문제 어떠한 자연수 N은, 몇 개의 연속된 자연수의 합으로 나타낼 수 있다. 당신은 어떤 자연수 N(1 ≤ N ≤ 10,000,000)에 대해서, 이 N을 몇 개의 연속된 자연수의 합으로 나타내는 가지수를 알고 싶어한다. 이때, 사용하는 자연수는 N이하여야 한다. 예를 들어, 15를 나타내는 방법은 15, 7+8, 4+5+6, 1+2+3+4+5의 4가지가 있다. 반면에 10을 나타내는 방법은 10, 1+2+3+4의 2가지가 있다. N을 입력받아 가지수를 출력하는 프로그램을 작성하시오. 입력 첫 줄에 정수 N이 주어진다. 출력 입력된 자연수 N을 몇 개의 연속된 자연수의 합으로 나타내는 가지수를 출력하시오 예제 입력 1 15예제 출력 1 4제출 답안 n을 2로 나눈 값에 1을 더해 기준을 설정한다. 연속된..
문제 주몽은 철기군을 양성하기 위한 프로젝트에 나섰다. 그래서 야철대장을 통해 철기군이 입을 갑옷을 만들게 하였다. 야철대장은 주몽의 명에 따르기 위하여 연구에 착수하던 중 아래와 같은 사실을 발견하게 되었다. 갑옷을 만드는 재료들은 각각 고유한 번호를 가지고 있다. 갑옷은 두 개의 재료로 만드는데 두 재료의 고유한 번호를 합쳐서 M(1 ≤ M ≤ 10,000,000)이 되면 갑옷이 만들어 지게 된다. 야철대장은 자신이 만들고 있는 재료를 가지고 갑옷을 몇 개나 만들 수 있는지 궁금해졌다. 이러한 궁금증을 풀어 주기 위하여 N(1 ≤ N ≤ 15,000) 개의 재료와 M이 주어졌을 때 몇 개의 갑옷을 만들 수 있는지를 구하는 프로그램을 작성하시오. 입력 첫째 줄에는 재료의 개수 N(1 ≤ N ≤ 15,0..
문제 n개의 자연수로 이루어진 수열이 주어질 때, 특정 구간 i,j의 합이 k보다 큰 모든 쌍 i,j의 개수를 출력하시오. 입력 첫째 줄에는 숫자들의 개수 n이 주어진다(1≤n≤100,000) 다음 줄에는 숫자 n개가 주어진다. 숫자들은 100,000보다 크지 않은 자연수임이 보장된다. 그 다음 줄에는 숫자 k가 주어진다. (1≤k≤1,000,000,000) 출력 특정 구간 [i,j]의 합이 k보다 큰 모든 쌍 i,j의 개수를 출력하시오. 예제 입력 1 5 1 2 3 2 1 7예제 출력 1 3예제 입력 2 5 1 1 1 1 1 2예제 출력 2 6제출 답안 조합과 같이 모든 경우를 구해서 sum하면 시간 초과가 발생한다. https://velog.io/@lse2625/%EB%B0%B1%EC%A4%80-14..
문제 더운 여름날 동물원의 백곰 앨버트는 너무 더워서 꼼짝도 하기 싫다. 다행히도 사육사들이 앨버트의 더위를 식히기 위해 얼음이 담긴 양동이들을 가져다 주> ### 문제 더운 여름날 동물원의 백곰 앨버트는 너무 더워서 꼼짝도 하기 싫다. 다행히도 사육사들이 앨버트의 더위를 식히기 위해 얼음이 담긴 양동이들을 가져다 주었다. 앨버트가 가장 적은 거리만 움직이고도 최대한 많은 얼음으로 더위를 식힐 수 있도록 도와주자. 우리 안은 1차원 배열로 생각하며, 총 N(1 ≤ N ≤ 100000)개의 얼음 양동이들이 xi(0 ≤ xi ≤ 1,000,000)좌표마다 놓여 있고 각 양동이 안에는 gi(1 ≤ gi ≤ 10,000)씩의 얼음이 들어 있다. 일단 앨버트가 자리를 잡으면 그로부터 좌우로 K(1 ≤ K ≤ 2,..