일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 앤서블 설치
- c++
- 백준
- docker
- C언어
- 스트림셋이란?
- nvidia docker
- 데이트
- mysql on docker
- 도커 elk
- MySQL
- 도커
- 파이썬
- 자바
- java
- 코딩
- 도커 시작하기
- 데이터베이스
- ansible install
- streamsets 강의
- c
- 푸시푸시
- 알고리즘
- python
- elk stack
- 스트림셋
- 클라우드
- 정보처리기사
- mysql docker
- 도커 mysql
- Today
- Total
목록알고리즘/백준 (34)
리그캣의 개발놀이터
문제정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이 때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.입력첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.출력X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. ㅎㅎㅎ 다음 수업시간까지 지루해서 풀어본 문제이다.
인접행렬을 vector를 사용하여 표현하면 다음과 같습니다. 123456789101112131415161718192021222324252627282930313233343536 #include #include using namespace std; vector a[10]; int main() { int n, m; scanf("%d %d", &n, &m); for (int i = 0; i
가중치가 있는 인접행렬을 표현할라면 대략 다음과 같은 코드를 사용한다. n, m사이를 edge라고 하고 그 인접한 노드를 가르키는 edge의 가중치를 w라고 했을때 다음과 같은 코드를 사용한다. 123456789101112131415#include #include int a[10][10]; int main() { int n, m; scanf("%d %d", &n, &m); for (int i = 0; i
문제정수 4를 1, 2, 3의 조합으로 나타내는 방법은 총 7가지가 있다.1+1+1+11+1+21+2+12+1+12+21+33+1정수 n이 주어졌을 때, n을 1,2,3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오.입력첫쨰 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 11보다 작다.출력각 테스트 케이스마다, n을 1,2,3의 합으로 나타내는 방법의 수를 출력한다.문제 풀이 d[i] = d[i-3] + d[i-2] + d[i-1] 이다 123456789101112131415161718192021#include #include #define MAX_COUNT 10001 int main() { int d[MAX_COU..
2 X N 타일링 문제 2 x n 크기의 직사각형을 1x2, 2x1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.아래 그림은 2x5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입력 첫줄에 자연수 N이 주어진다. 출력 첫째 줄에 연산을 하는 횟수의 최소값을 출력한다.소스코드 123456789101112131415161718192021#include #include #define MAX_COUNT 10001 int main() { int d[MAX_COUNT],N; scanf_s("%d", &N); for (int i = 1; i
1로 만들기 문제 정수 X에 사용할 수 있는 연산은 다음과 같이 세가지 이다. 1. X가 3으로 나누어 떨어지면, 3으로 나눈다.2. X가 2로 나누어 떨어지면, 2로 나눈다.3. 1을 뺀다. 정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최소값을 출력하시오. 입력 첫줄에 자연수 N이 주어진다. 출력 첫째 줄에 연산을 하는 횟수의 최소값을 출력한다. 소스코드12345678910111213141516171819202122232425262728293031323334353637383940#include using namespace std; int d[1000001];int solve_Quiz(int data); int main() { int N;..
다이나믹 프로그래밍 - 백준 다이나믹을 푸는 방법은 다음과 같이 두 가지가 존재한다. 1. Top-down2. Bottom-up Top-down 먼저 문제를 작은 문제로 나누고, 작은 문제를 푼다. 작은 문제를 풀고나서 문제를 풀어버린다. 피보나치를 예로 들어보면 fibonacci(n) 이라는 문제를 풀어야 한다. fibonacci(n-1)과 fibonacci(n-2)로 문제를 나눈다. fibonacci(n-1)과 fibonacci(n-2)를 호출해 작은 문제를 푼다. fibonacci(n-1)의 값과 fibonacci(n-2)의 값을 더해 fibonacci(n)이라는 문제를 푼다. 대충 이런 식인것 같다. Bottom-up 문제의 크기가 작은 문제 부터 차례대로 풀고 문제의 크기를 조금씩 크게 만들어서..