Algorithm/백준
C++ 알고리즘 - 백준 1010 다리 놓기
마루설아
2025. 1. 14. 23:28
https://www.acmicpc.net/problem/1010
#include <bits/stdc++.h>
#define endl "\n"
using namespace std;
void CPP_INIT() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
}
int main(void) {
CPP_INIT();
int in;
cin >> in;
for (int i = 0; i < in; i++) {
double input1;
double input2;
cin >> input1 >> input2;
double num = input2;
double num1 = input1;
if (input1 == 0) {
cout << 0;
return 0;
}
while (--input1) {
num--;
input2 *= num;
input2 /= num1;
num1--;
}
cout << int(round(input2)) << endl;
}
}
double 로 변수를 받고
반올림 (round) 시킨 다음
int로 다시 형변환 하여 해결
숫자가 큰 팩토리얼 문제에 유용할 듯