https://www.acmicpc.net/problem/2133 2133번: 타일 채우기 문제 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. 입력 첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다. 출력 첫째 줄에 경우의 수를 출력한다. 예제 입력 1 복사 2 예제 출력 1 복사 3 힌트 아래 그림은 3×12 벽을 타일로 채운 예시이다.... www.acmicpc.net #include using namespace std; int d[31]; int dp(int n) { if (n == 0) return 1; if (n == 1) return 0; if (n == 2) return 3; if (d[n] != 0) return d[n]; int result = 3 * dp(..
https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 문제 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다. 삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는 www.acmicpc.net #include using namespace std; #define MAX(X, Y) ((X) > (Y) ? (X) : (Y)) int..
https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. www.acmicpc.net #include using namespace std; int tail[1001]; int dp(int n) { if (n == 1)return 1; if (n == 2)return 3; if (tail[n] != 0)return tail[n]; return tail[n] = (dp(n - 1) + (2 * dp(n - 2))) % 10007; } int main(void) { int n; cin >> n; cout
https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net #include using namespace std; int tail[1001]; int dp(int n) { if (n == 1)return 1; if (n == 2)return 2; if (tail[n] != 0)return tail[n]; return tail[n] = (dp(n - 1) + dp(n - 2)) % 10007; } int main(void) { int n; cin >> n; cout
https://www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 문제 정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 1+1+1+1 1+1+2 1+2+1 2+1+1 2+2 1+3 3+1 정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 11보다 작다. 출력 각 www.acmicpc.net #include #include using namespace std; int N; int map[12]; void bfs() ..
https://www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주어진다. www.acmicpc.net #include #include #include using namespace std; int N, M, result = 0;//정점 개수, 간선 개수 vector V; vector check; void DFS(int node) { stack S; S.push(node); check[node]++; while (!S.empty()..
https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며 해충을 잡아 먹음으로써 배추를 보호한다. 특히, 어떤 배추에 배추흰지렁이가 한 마리라도 살고 있으면 이 지렁이는 인접한 다른 배추로 이동할 수 있어, 그 배추들 역시 해충으로부터 보호받을 수 있다. ( www.acmicpc.net #include #include using namespace std; int path; int M, N, K;//가로 세로 배추몇개 ..
https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토들의 정보가 주어진다. 즉, 둘째 줄부터 N개의 줄에는 상자에 담긴 토마토의 정보가 주어진다. 하나의 줄에는 상자 가로줄에 들어있는 토마토의 상태가 M개의 정수로 주어진다. 정수 1은 익은 토마토, 정수 0은 익지 않은 토마토, 정수 -1은 토마 www.acmicpc.net #include #include #include #include using namespace std; int M, N; int direct..
https://www.acmicpc.net/problem/3187 3187번: 양치기 꿍 문제 양치기 꿍은 맨날 늑대가 나타났다고 마을 사람들을 속였지만 이젠 더이상 마을 사람들이 속지 않는다. 화가 난 꿍은 복수심에 불타 아예 늑대들을 양들이 있는 울타리안에 마구 집어넣어 양들을 잡아먹게 했다. 하지만 양들은 보통 양들이 아니다. 같은 울타리 영역 안의 양들의 숫자가 늑대의 숫자보다 더 많을 경우 늑대가 전부 잡아먹힌다. 물론 그 외의 경우는 양이 전부 잡아먹히겠지만 말이다. 꿍은 워낙 똑똑했기 때문에 이들의 결과는 이미 알고있다. 만약 빈 www.acmicpc.net #include #include #include #include using namespace std; int v = 0, k = 0; ..
https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 문제 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다. 수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 www.acmicpc.net #include #include using namespace std; int map[100001]; void bfs(int N, int K..
priority_queue 주요 함수 priority_queue : 원하는 자료형 및 클래스 T를 통해 생성. 여기서 Container는 vector와 같은 컨데이터이며 Compare는 비교함수 클래스이다. insert(element) : 우선순위 큐에 원소 추가 pop() : 우선순위 큐에서 top의 원소를 삭제 top() : top에 있는 원소를 반환 empty() : 리스트가 비어있음 true 아님 false반환 size() : 리스트 원소들의 갯수를 반환 예제 코드 Max Heap 구현 #include//그냥 queue 인클루드하면됨~ int main(void) { //priority_queue priority_queue pq;//less 써서 내림차순정렬 //priority_queue pq;//..
set 주요 함수 set : 원하는 자료형 및 클래스 T를 통해 생성 중복을 허용하지 않는다. 중복을 허용하려면 multiset 사용!! begin() : beginning iterator 반환 end() : end iterator 반환 insert(element) : 세트에 element 추가 erase(element) : 세트에서 해당하는 element 삭제 clear() : 세트에 있는 모든 원소 삭제 find(key) : key(키값)에 해당하는 iterator를 반환 count(key) : key(키값)에 해당하는 원소들(value들)의 개수를 반환 empty() : 리스트가 비어있음 true 아님 false반환 size() : 리스트 원소들의 갯수를 반환 예제 코드 #include int ma..
- Total
- Today
- Yesterday
- java 환경설정
- jdbc
- 상속
- JDBC 프로그램 작성단계
- view
- 추상화
- Delete
- ojdbc6.jar
- Oracle
- JdbcTemplate
- Update
- controller
- 다형성
- Scott/Tiger
- java
- OOP
- 캡슐화
- 객체
- MVC
- .
- model
- select
- 객체지향
- INSERT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |