Notice
Recent Posts
Recent Comments
Link
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- ์์ ์ ๋ ฌ
- GCP
- dynamic debugging
- Spring
- ์คํ
- ๋์ ํฉ
- OS
- c++
- ๋งต
- dfs
- ๋ถํ ์ ๋ณต
- JPA
- ๊ตฌํ
- thymeleaf
- ๊ทธ๋ฆฌ๋
- web
- ์ฐ์ ์์ ํ
- ์ฌ๊ท
- ์ด๋ถ ํ์
- ์ต๋จ ๊ฒฝ๋ก
- ๋ฐฑํธ๋ํน
- ๋ฌธ์์ด
- ์๋ฎฌ๋ ์ด์
- error
- DP
- CVE
- Reversing
- ๋ฐ์ดํฌ์คํธ๋ผ
- BFS
- java
Archives
- Today
- Total
hades
[Baekjoon] 1629๋ฒ: ๊ณฑ์ ๋ณธ๋ฌธ
๐ฅ ๋ฌธ์
https://www.acmicpc.net/problem/1629
๐ ์ค๊ณ
๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ์ฌ ๊ณ์ a๋ฅผ ๊ณฑํ๊ณ c๋ก ๋๋๋ฉด์ ๊ฐฑ์ ํ๋ค๋ฉด, b๊ฐ 20์ต ์ด์์ด๋ฏ๋ก ์๊ฐ ์ด๊ณผ๊ฐ ๋ฐ์ํ๋ค.
๊ฑฐ๋ญ์ ๊ณฑ์ ํน์ฑ ์ค์ x^(y+z) = x^y * x^z๊ฐ ์๋ค. ์ฌ๊ธฐ์๋ ๊ฐ๋จํ๊ฒ ํ์ ์ง์๋ก ๊ตฌ๋ถํ๋ค.
๐ ํ์ด
#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>
using namespace std;
long long a, b, c;
long long square(long long b) {
if (b == 0) {
return 1;
}
else if (b % 2 == 0) {
long long half = square(b / 2);
return half * half % c;
}
else if (b % 2 == 1) {
return square(b - 1) * a % c;
}
}
int main(void)
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cin >> a >> b >> c;
cout << square(b) << "\n";
return 0;
}
'๐ PS > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 1504๋ฒ: ํน์ ํ ์ต๋จ ๊ฒฝ๋ก (0) | 2024.08.03 |
---|---|
[Baekjoon] 1238๋ฒ: ํํฐ (0) | 2024.08.03 |
[Baekjoon] 1167๋ฒ: ํธ๋ฆฌ์ ์ง๋ฆ (0) | 2024.08.02 |
[Baekjoon] 1149๋ฒ: RGB๊ฑฐ๋ฆฌ (0) | 2024.08.02 |
[Baekjoon] 1043๋ฒ: ๊ฑฐ์ง๋ง (0) | 2024.08.01 |