전체 글
-
백준 13171 APS 2021. 4. 6. 19:03
www.acmicpc.net/problem/13171 #include #include #include using namespace std; #define M 1000000007 long long A, X; long long Ax[65]; int main() { cin >> A; cin >> X; A %= M; Ax[0] = A; for (int i = 1; i < 64; i++) { Ax[i] = (Ax[i - 1] * Ax[i - 1]) % M; } long long tX = X; long long res = 1; while (tX != 0) { if (tX % 2) { res *= Ax[dep]; res %= M; } tX /= 2; } cout
-
백준 1629 곱셈PS 2021. 4. 6. 05:51
곱셈 + 큰 수 -> mod #include #include using namespace std; long long ret(int a, int b, int c) { if (b == 0) return 1; long long half = ret(a, b / 2, c); if (b % 2 == 0) { return (half * half) % c; } else { return ((half * half) % c * a) % c; } } int main() { int a, b, c; cin >> a >> b >> c; cout
-
백준 1992번 쿼드트리PS 2021. 4. 4. 23:29
www.acmicpc.net/problem/1992 탐색하고 분할하고. 분할1을(를) 탐색하고 분할2을(를) 탐색하고 분할3을(를) 탐색하고 분할4을(를) 탐색하고 ... #include #include #include using namespace std; #define MAX 64 int n; int map[MAX][MAX]; string retZip(int y, int x, int size) { if (size == 1) { return to_string(map[y][x]); } bool zero = true, one = true; for (int i = y; i < y + size; i++) { for (int j = x; j < x + size; j++) { if (map[i][j]) { zero..
-
백준 11729번 하노이 탑 이동순서PS 2021. 4. 2. 04:34
www.acmicpc.net/problem/11729 분할하기 #include #include #include using namespace std; int n; int res; vector v; void move(int dep, int from, int to) { if (dep == 1) { res++; v.push_back(make_pair(from, to)); return; } int tmp; for (int i = 1; i > n; move(n, 1, 3)..
-
백준 1074 ZPS 2021. 4. 2. 04:31
www.acmicpc.net/problem/1074 문제를 작은 문제로 쪼갤 수 있음을 알 수 있다. #include #include #include using namespace std; int n; int r, c; int res; void find(int len, int sy, int sx, int startNum) { if (sy == r && sx == c) { res = startNum; return; } int half = len / 2; int y = sy + half; int x = sx + half; if (r = x) { find(half, sy, x, startN..
-
백준 1175번 배달PS 2021. 3. 29. 23:52
www.acmicpc.net/problem/1175 중복체크를 위한 상태공간을 정의해야 합니다. 탐색이 발산적으로 이루어지므로 목표지점 1을 방문할 때, 목표지점 2의 경로를 지나갈 수 있습니다. 따라서 이 두 개는 따로 체크되어야 합니다. 그리고 방향은 매시간 달라지므로 어떤 방향으로 나가냐(혹은 들어오냐)에 따라 체크가 따로 되어야 합니다. 따라서 상태공간을 이루는 요소로 좌표, 방향, 1의 방문 여부, 2의 방문 여부 입니다. #include #include #include #include #include #include using namespace std; #define MAX 50+1 struct point { int y, x, dir, cnt; bool cVisited = false, dVis..