#38. [백준_C언어] 2775 : 부녀회장이 될테야

 

 입력 코드 

#include <stdio.h>

main() {
	int T, k, n, i, j;
	int d[15][15] = { 0, };

	for (i = 1; i < 15; i++) {
		d[0][i] = i;
	}

	for (i = 1; i < 15; i++) {
		for (j = 1; j < 15; j++) {
			d[i][j] = d[i - 1][j] + d[i][j - 1];
		}
	}

	scanf("%d", &T);

	for(i=0;i<T;i++) {
		scanf("%d %d", &k, &n);
		
		printf("%d\n", d[k][n]);
	}
}

 

 코드 설명 

#수학 #2차원배열 #배열초기화

#include <stdio.h>

main() {
	int T, k, n, i;
	scanf("%d", &T);

	for (i = 0; i < T; i++) {
		scanf("%d", &k);
		scanf("%d", &n);
	}

	int a, b, num;
	for (a = 0; a < k; a++) {
		for (b = 0; b < n; b++) {
			num += b;
		}
		num += a;
	}
	printf("%d\n", num);
}

처음에는 반복문으로 b호까지 더하고 a층까지 더해보려고 했으나 그 방법이 아닌 듯했다.

 

#include <stdio.h>

main() {
	int T, k, n, i, j;
	int d[15][15] = { 0, };

	for (i = 1; i < 15; i++) {
		d[0][i] = i;
	}

	for (i = 1; i < 15; i++) {
		for (j = 1; j < 15; j++) {
			d[i][j] = d[i - 1][j] + d[i][j - 1];
		}
	}

	scanf("%d", &T);

	for(i=0;i<T;i++) {
		scanf("%d %d", &k, &n);
		
		printf("%d\n", d[k][n]);
	}
}

이차원 배열을 이용해서 d[i][j] = d[i-1][j]+d[i][j-1] 점화식을 찾아내는 게 포인트였던 것 같다.

 

 

 

참고한 사이트

 

 2차원 배열 

dojang.io/mod/page/view.php?id=307

 

C 언어 코딩 도장: 37.1 2차원 배열을 선언하고 요소에 접근하기

2차원 배열은 [ ] (대괄호)를 두 번 사용하여 선언하며 첫 번째 대괄호에는 세로 크기, 두 번째 대괄호에는 가로 크기를 지정합니다. 일반적으로 2차원 공간은 가로x세로로 표기하지만 배열로 만

dojang.io

wookje.dance/2018/01/23/boj-2775-%EB%B6%80%EB%85%80%ED%9A%8C%EC%9E%A5%EC%9D%B4-%EB%90%A0%ED%85%8C%EC%95%BC/

 

[BOJ] 2775 : 부녀회장이 될테야

2775 : 부녀회장이 될테야 풀이 점화식을 오지게 세워보자~ d[i][j] = i층 j호에 사는 사람의 수 d[i][j] = d[i-1][j] + d[i][j-1] 코드 #include int t, n, k, d[15][15]; int main() { for (int i = 1; i < 15; i++) d[0][i] = i

wookje.dance

 

 

 문제 출처 

www.acmicpc.net/problem/2775

 

2775번: 부녀회장이 될테야

첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다

www.acmicpc.net