일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 논문리뷰
- 소수판정
- 백준
- 백준알고리즘
- 문자열
- SQL
- MySQL
- C언어
- 프로그래머스코딩테스트
- 수학
- 브루트포스알고리즘
- 이분탐색
- 자료구조
- C
- 해시를사용한집합과맵
- 큐
- 정렬
- 프로그래머스sql
- C++
- 이진탐색
- 프로그래머스연습문제
- 정수론
- 구현
- 프로그래머스
- Image Classification
- 그리디알고리즘
- 다이나믹프로그래밍
- 그리디
- 논문구현
- 사칙연산
- Today
- Total
목록모든 이야기 (163)
초보 개발자의 이야기, 릿허브

1. 문제이해 https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 그룹단어란, 단어에 존재하는 모든 문자에 대해 각 문제가 연속해서 나타나는 단어이다. 단어 N개가 주어질 때, 이중 그룹단어의 개수를 출력하는 것이 목표이다. 2. 문제풀이 N개의 단어를 입력받아, 그 중 그룹단어의 개수를 출력하는 것이 목표이다. 그룹 단어를 예시를 들어 설명하자면, ccaabb, aaeef, ahcfs 등과 같이 단어를 이루는 각 ..

1. 문제이해 https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net 양의 정수 n에 대해서 d(n)은 n과 n의 각 자리수를 더하는 함수이다. 이때, n을 d(n)의 생성자라고 할 때, 생성자가 없는 숫자를 셀프 넘버라고 한다. 10000보다 작거나 같은 셀프 넘버를 한 줄에 하나씩 출력하는 프로그램을 작성하는 것이 목표이다. 2. 문제풀이 10000 이하의 생성자가 없는 숫자, 셀프 넘버인 숫자들을..

1. 문제이해 https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net 주어진 n에 대해 2×n 크기의 직사각형을 1×2, 2×1, 2×2 타일로 채우는 방법의 수를 구하는 것이 목표이다. 단, 방법의 수를 10,007로 나눈 값을 출력해야 한다. 2. 문제풀이 이전에 풀이했던 11726번 문제와 거의 동일한 문제이다. 단, 하나의 조건이 추가되었는데, 바로 2×2 타일이다. 이전에는 1×2, 2×1 타일만을 가지고 타일링을 했다면, 이번에는 2×2 의 경우도 고려해주어야 한다. 풀..

1. 문제이해 https://programmers.co.kr/learn/courses/30/lessons/12899 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr 자연수 n이 매개변수로 주어질 때, n을 124 나라에서 사용하는 숫자로 바꾼 값을 리턴하는 것이 목표이다. (124 나라에서 n을 표기하는 방법은 위 표와 같다.) 2. 문제풀이 10진수의 n을 124 나라의 숫자로 바꾸는 프로그램을 구현하는 것이 목표이다. 124 나라의 숫자로 바뀐 숫자들을 보면서, 규칙을 찾아내는 것이 가장 중요한데, 아래 그림을 통해 규칙을 파악해보도록 하자. 124 나라의 숫자들로 변환됫 숫자들을 위와 같은 규칙을 따르게 된다. 우선, 숫자들은 3개씩 짝을 지어 일의 자리 숫자가 1, 2, 4..

1. 문제이해 https://programmers.co.kr/learn/courses/30/lessons/42885 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 사람들의 몸무게를 의미하는 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 리턴하는 것이 목표이다. (단, 구명보트에는 한 번에 최대 2명까지 탈 수 있다.) 2. 문제풀이 사람들의 몸무게와 구명보트의 무게제한이 주어질 때, 사람들을 ..

1. 문제이해 https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 정수 삼각형은 위 그림과 같이 i번째 줄에 i개의 정수로 이루어진 삼각형이다. 삼각형의 크기 n이 주어지고 맨 위층부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로에 있는 수의 합을 구하는 것이 목표이다. 단, 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. (삼각형의 크기(n)는 1 이상 500 이하이며, 삼각형을 이루고..

1. 문제이해 https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 집의 수(N)와 각 집을 빨강(R), 초록(G), 파랑(B)으로 칠하는 비용이 주어진다. 다음과 같은 조건을 만족하면서, 모든 집을 칠할 수 있는 최소비용을 구하는 것이 목표이다. 1. 1번 집의 색은 2번 집의 색과 같지 않아야 한다. 2. N번 집의 색은 N - 1번 집의 색과 같지 않아야 한다. 3. i(2 ≤ i ≤ N-1)번 집의 색은 i - 1번, i..

1. 문제이해 https://www.acmicpc.net/problem/1024 1024번: 수열의 합 첫째 줄에 N과 L이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이고, L은 2보다 크거나 같고, 100보다 작거나 같은 자연수이다. www.acmicpc.net N과 L이 주어질 때, 합이 N이면서, 길이가 적어도 L인 가장 짧은 정수 리스트를 구하는 것이 목표이다. 단, 정수 리스트는 음수가 아니어야 하며, 연속된 숫자들이어야 한다. 2. 문제풀이 간단한 문제인것 같지만, 조금 까다로운 문제이다. 처음에는 그저 무조건 길이가 L인 리스트를 구하는 것이라고만 생각하고 문제를 풀었는데, 실은 길이가 L이상인 리스트들 중 가장 짧은 정수 리스트를 구하는 문제였다. 즉, 문제에서 구해야..

1. 문제이해 https://programmers.co.kr/learn/courses/30/lessons/59041 코딩테스트 연습 - 동명 동물 수 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 위와 같은 정보를 가진 ANIMAL_INS 테이블에서 동물 보호소에 들어온 동물 이름 중 두번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성하는 것이 목표이다. 2. 문제풀이 이번에도 역시 GROUP BY 절을 이용..

1. 문제이해 https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net N개의 단어가 주어졌을 때, 단어의 길이가 짧은것부터 정렬하는 것이 목표이다. 단, 단어의 길이가 같다면 사전순으로 정렬하며, 같은 단어는 한번만 출력한다. 2. 문제풀이 언뜻 보면 단어의 길이만 보고 정렬하면 될것같은 간단한 문제이지만, 몇가지 조건이 더해진 살짝 까다로운 문제이다. 단어의 길이가 같다면 사전순으로 정렬한다는 것과, 같은 단어는 한번만 출력한다는 점이다...