본문 바로가기

Algorithm197

[백준 11728] 배열 합치기 11728번: 배열 합치기 (acmicpc.net) 11728번: 배열 합치기 첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거 www.acmicpc.net 정답 코드 // http://boj.kr/eff70b5b64974fdebbcd7d2a1fdf29a5 #include using namespace std; int n, m; int a[1000005], b[1000005], c[2000005]; int main(void) { ios::sync_with_stdio(0); cin.tie(0); cin >> n >> m; for(int.. 2022. 9. 13.
[백준 1992] 쿼드트리 1992번: 쿼드트리 (acmicpc.net) 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1 ≤ N ≤ 64의 범위를 가진다. 두 번째 줄부터는 길이 N의 문자열이 N개 들어온다. 각 문자열은 0 또 www.acmicpc.net 배운것 string으로 받고 다시 숫자로 바꿔주기 for (int i = 0; i > str; for (int j = 0; j < N; j++) arr[i][j] = str[j] - '0'; } 이해 안되면 외우기 solve(n / 2, y, x); //왼쪽 위 solve(n / 2, y, x + n / 2); //오른쪽 위 solve(n / 2, y .. 2022. 9. 10.
[백준 2630] 색종이 만들기 2630번: 색종이 만들기 (acmicpc.net) 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 전 문제랑 똑같음 그냥 외우기 정답 코드 // Authored by : haneulkimdev // Co-authored by : - // http://boj.kr/844f77ac02c84f889eeb69a5cf7d652b #include using namespace std; int paper[128][128]; int ans[2]; bool chk(int n, int x, int y.. 2022. 9. 8.
[백준 1780] 종이의 개수 1780번: 종이의 개수 (acmicpc.net) 1780번: 종이의 개수 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수 www.acmicpc.net 한국어를 이해 못하다가 이거 보고 이해함 [백준] 1780번 - 종이의 개수 | ChanBLOG (chanhuiseok.github.io) 정답 코드 // Authored by : cpprhtn // Co-authored by : BaaaaaaaaaaarkingDog // http://boj.kr/b8488e82105d49e89ca6f39fd8ee665b #include using namespace s.. 2022. 9. 8.
[백준 17478] 재귀함수가 뭔가요? 17478번: 재귀함수가 뭔가요? (acmicpc.net) 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 정답 코드 // Authored by : cpprhtn // Co-authored by : - // http://boj.kr/67c805f6167e49bebd8c13e9b0df4493 #include using namespace std; int N; void _bar(const char* str, int stk){ for (int j = 0; j < stk; ++j) cout N; cout 2022. 9. 7.
[실전 알고리즘] 재귀 재귀 하나의 함수에서 자기 자신을 다시 호출해 작업을 수행하는 알고리즘 사고법 절차지향적 사고 X 귀납적 사고 O ex. '1번 도미노가 쓰러진다', 'k번 도미노가 쓰러지면 k+1번 도미노도 쓰러진다' 까지만 생각한 후에 바로 모든 도미노가 쓰러진다는 결론에 도달할 수 있어야 함 재귀함수의 조건 특정 입력에 대해서는 자기 자신을 호출하지 않고 종료되어야함(Base condition) 모든 입력은 base condition으로 수렴해야 함 재귀에 대한 정보 1. 함수를 명확하게 정의 : 함수의 인자로 어떤 것을 받고 어디까지 계산한 후 자기 자신에게 넘겨줄지 명확하게 정해야 함 2. 모든 재귀함수는 반복문만으로 동일한 동작을 하는 함수를 만들 수 있음 3. 재귀는 반복문으로 구현했을 때에 비해 코드가 간.. 2022. 9. 7.