Notice
Recent Posts
Recent Comments
Link
목록1629번 (1)
궤도
[백준] 1629번 : 곱셈
문제 풀이 거듭제곱 계산 문제는 유명한 분할 정복 문제이다. A^B가 있을 때 이 문제를 어떻게 나눌 수 있을까? B가 짝수일 때 A^B = A^(B/2) * A^(B/2) B가 홀수일 때 A^B = A * A^(B-1) 종료조건은 사람마다 B가 0일때 하거나 1일때 하거나 하던데 난 그냥 1로 했다. 소스코드 #include using namespace std; typedef long long ll; ll divide(ll A, ll B, ll C) { ll tmp; if (B == 1) //더이상 나눌 수 없음 return A % C; else { if (B % 2 == 0) { //짝수 거듭제곱일 때 tmp = divide(A, B / 2, C); return (tmp * tmp) % C; } el..
💻 현생/⛓ 알고리즘
2021. 3. 30. 14:15