반응형

C언어 147

1182 백준 부분집합의 합

www.acmicpc.net/problem/1182 1182번: 부분수열의 합 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. www.acmicpc.net 문제 N개의 정수로 이루어진 수열이 있을 때, 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000..

2605 codeup문제 캔디팡 floodfill문제

codeup.kr/problem.php?id=2605 캔디팡 최근 캔디팡이라는 스마트폰 게임이 인기를 끌고 있다. 캔디팡은 7 * 7 모양의 격자 판에 같은 색깔이 연속 3개 이상인 부분을 찾아 터치하면 터지면서 점수를 얻는 게임이다. 이때 연속된 부분은 codeup.kr #include using namespace std; int board[9][9]; intcnt[9][9]; int d = 0; int ret; voidinit_cnt() { int i; int j; for (i = 0; i 7) { return 0; } d++; cnt[i][j] = 1; for (int k = 0; k < 4; k++) { newx = i + arr[k][0]; //new newy = j + arr[k][1]; if..

C언어 2021.01.10

프롬프트 경로 짧게하는 법 : bashrc PS1옵션 수정

명령 프롬프트란 아래와 같이 절대경로로 나타나는 것이 기본이다. @LAPTOP-3T01U2DS:/mnt/c/Users/user/Desktop/ft_libft$ 행여 매우 깊은 디렉토리를 들어갔다면 위치정보만 두줄 나오는 불상사가 생기게 된다 그래서 짧게 바꿔보려 한다 전체 계정 유저 계정 이런거 따지는 경우도 있던데 그냥 .bashrc가 중요한듯 하다 $ sudo vi /etc/bash.bashrc $ vi ~/.bashrc sudo를 쓰거나 안 쓰는 명령어 둘다 가져왔다 (나의 경우 밑에 것을 썼다) 이런 파일이면 된다 아래로 내려서 PS1 옵션을 찾고 다음과 같이 고친다 PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W\$ ' 저기 if와 else문으로 PS1이 설..

C언어 2020.09.29

백준 15990번 1, 2, 3, 더하기 5

www.acmicpc.net/problem/15990 15990번: 1, 2, 3 더하기 5 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 1,000,000,009로 나눈 나머지를 출력한다. www.acmicpc.net 예제 입력 1 복사 3 4 7 10 예제 출력 1 복사 3 9 27 #include using namespace std; int cnt; void dfs(int n, int sum, int prev) { if (sum == n) { cnt++; } if (sum > n) return; for (int i = 1; i > t; for (int i = 0;i > n; cnt = 0; dfs(n, 0, 0); cout T; dp[1][1..

C언어 2020.08.28

백준 11052번 : 카드 구매하기 bfs -> 최적 dp배열

https://www.acmicpc.net/problem/11052 11052번: 카드 구매하기 첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000) www.acmicpc.net 예제 입력 1 복사 4 1 5 6 7 예제 출력 1 복사 10 예제 입력 2 복사 5 10 9 8 7 6 예제 출력 2 복사 50 예제 입력 3 복사 10 1 1 2 3 5 8 13 21 34 55 예제 출력 3 복사 55 예제 입력 4 복사 10 5 10 11 12 13 30 35 40 45 47 예제 출력 4 복사 50 예제 입력 5 복사 4 5 2 8 10 예제 출력 5 복사 20 예제 입력 6 복..

C언어 2020.08.21

백준 11726번 2*n 타일링 bfs => 피보나치로 풀기

https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net 예제 입력 1 복사 2 예제 출력 1 복사 2 예제 입력 2 복사 9 예제 출력 2 복사 55 #include #include using namespace std; queue que; void bfs(int n, int lev) { que.push(lev); int now; int cnt = 0; while (1) { if (que.empty()) break; now = que.front(); que.pop(); if..

C언어 2020.08.21

백준 1463번 : 1로 만들기 : bfs로 풀었다.

1463번: 1로 만들기 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 예제 입력 1 2 예제 출력 1 1 예제 입력 2 10 예제 출력 2 3 힌트 10의 경우에 10 -> 9 -> 3 -> 1 로 3번 만에 만들 수 있다. #include #include using namespace std; struct Node { int num; int cnt; }; queue que; void bfs(int n, int lev) { Node node, temp; node = { n, lev }; que.push(node); while (1) { node = que.front(); que.pop(); if (node.num == 1..

C언어 2020.08.21
반응형