알고리즘/BaekJoon 단계별로 풀어보기 7

[약수, 배수와 소수2] 17103 - 골드바흐 파티션

https://www.acmicpc.net/problem/17103 소스코드 (c++) - 시간초과 발생#include #include #define MAX_VALUE 1000000using namespace std;// 에라토스테네스의 체 -> O(Nlog(logN))// N의 범위는 100만 까지 이므로 시간복잡도에 따르면 약 720만번 정도의 연산이 들어간다bool prime_number[MAX_VALUE + 1];// MySetvoid set_prime_number() { // true로 배열 초기화 fill(prime_number, prime_number + MAX_VALUE + 1, true); prime_number[0] = prime_number[1] = false; // 에라토스테네스의 ..

[2차원 배열] 2563번 - 색종이 (c++)

https://www.acmicpc.net/problem/2563소스 코드 (c++)#include #include using namespace std;void check_page(bool (*area)[100], int pos_x, int pos_y) { for (int i = pos_x; i > n; for (int i = 0; i > x >> y; check_page(area, x, y); } for (int i = 0; i  Review처음에는 기존 색종이 넓이를 더한 다음 겹치는 색종이를 빼려고 하였으나 매우 복잡하다는 것을 깨닫고 다른 방식으로 생각을 해보았다.전체 도화지의 격자 중 색종이가 존재하는 위치를 모두 true로 표시한 후, 최종적으로 true인 격자만 세어 넓이를 1씩 더해주는 ..

[2차원 배열] 2738번 행렬 덧셈(c++)

https://www.acmicpc.net/problem/2738 소스 코드 (c++)#include using namespace std;int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m; int arr[101][101]; int result_arr[101][101] = {{0,},}; cin >> n >> m; for (int i = 0; i > arr[y][x]; result_arr[y][x] += arr[y][x]; } } } for (int y = 0; y  알게된 점// 1. 2차원 배열 초기화int arr[3][3] = {0};// 2. 2차원 배열 초기화int arr[3][3] = {{0,}, };// ..