https://www.acmicpc.net/problem/10994 10994번: 별 찍기 - 19 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 1. 접근 방식 가장 바깥쪽 그림을 그리는 함수를 만들자. 이 문제에서 별의 패턴은 사각형이 n번 그려진다는 것이다. 사각형 각 변의 길이는 length = 1 + (4 * (n - 1) )이다. 따라서 먼저 빈 도화지 역할로, 행과 열이 length 크기인 빈 리스트 table를 생성한다. 처음 별표(*)를 그리기 시작하는 위치(x, y)는 (0, 0)이고, 사각형의 길이는 length이다. 그림 그리는 논리는 이러하다. ① 사각형 위쪽과 아래쪽은 모두 *를 채워넣는다. 즉, table의 첫 번째 행과 마지막 행은 모든 열을..
2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 1. 문제 내용 2. 접근 방식 제 1, 2, 3, 4사분면으로 나뉘는 프렉탈 구조 데이터 리스트에서 0과 1이 모두 존재한다면, 해당 데이터 리스트를 4개의 사분면으로 나누어 각각 재귀 함수를 호출한다. 이때 사분면은 중간 인덱스 i를 기준으로 나누면 된다. 데이터 리스트가 0 또는 1로만 이루어져 있다면 각 개수를 세는 count 변수에 +1 한다. 3. 정답 코드 divide( ) : data의 제 quadrant사분면을 구한다...
4779번: 칸토어 집합 칸토어 집합은 0과 1사이의 실수로 이루어진 집합으로, 구간 [0, 1]에서 시작해서 각 구간을 3등분하여 가운데 구간을 반복적으로 제외하는 방식으로 만든다. 전체 집합이 유한이라고 가정하고, www.acmicpc.net 1. 문제 내용 2. 접근 방식 단계별로 풀어보기에서 '재귀' 카테고리로 들어갔었기 때문에 재귀를 활용해야 한다는 것은 알고 있었다. 그러나 팩토리얼처럼 귀여운 재귀 문제 말곤 풀어본 적이 없어서 꽤 오랜 시간 고민했다. 스트링을 3등분하고 가운데 구간을 공백(띄어쓰기)로 만드는 것은 쉽지만, 문제는 이를 어떻게 재귀 함수에 녹이냐는 것이었다! 병합 정렬에서 힌트를 얻다. 이 문제를 풀기 전에 병합 정렬 문제를 시도했다가 포기했는데, 뜻밖에도 칸토어 집합 문제에..