반응형
https://www.acmicpc.net/problem/15489
범위를 입력받고 그 범위만큼 탐색해 답을 구하는 brute force로 해결한 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
r, c, w, 파스칼의 삼각형을 저장할 2차원 배열 pas, 정답을 출력할 변수 ans를 선언 후 적절히 입력받습니다.
📔 풀이과정
30까지의 파스칼 삼각형 수를 구해 pas에 저장해줍니다.
📔 정답출력
입력받은 범위만큼 for loop를 수행해 ans에 더해줍니다.
📕 Code
#include <bits/stdc++.h>
using namespace std;
int r, c, w, pas[40][40], ans;
void makePascal(){
for(int i = 1; i <= 31; i++) {
for(int j = 1; j <= i; j++){
if(i == 1 || j == 1) pas[i][j] = 1;
else pas[i][j] = pas[i-1][j] + pas[i-1][j-1];
}
}
}
int main(){
cin >> r >> c >> w;
makePascal();
for(int i = r; i < r + w; i++){
for(int j = c; j <= c + i - r; j++) {
ans += pas[i][j];
}
}
cout << ans;
}
'Algorithm > Brute Force' 카테고리의 다른 글
(C++) - 백준(BOJ) 1543 : 문서 검색 (0) | 2022.04.22 |
---|---|
(C++) - 백준(BOJ) 14912 : 숫자 빈도수 (0) | 2022.04.20 |
(C++) - 백준(BOJ) 8892 : 팰린드롬 (0) | 2022.04.17 |
(C++) - 백준(BOJ) 24039 : 2021은 무엇이 특별할까? (0) | 2022.04.14 |
(C++) - 백준(BOJ) 11068 : 회문인 수 (0) | 2022.04.13 |