문제 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27,...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3) ×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제 출력 1과 같다. 입력 첫째 줄에 N이 주어진다. N은 3의 거듭제곱이다. 즉 어떤 정수 k에 대해 $N=3^{k}$이며, 이때 1 ≤ k < 8이다. 출력 첫째 줄부터 N번째 줄까지 별을 출력한다. 풀이 오랜 시간이 걸려서 풀었지만 풀어놓고도 잘 이해가 가지 않는 문제이..
문제 정휘는 후배들이 재귀 함수를 잘 다루는 재귀의 귀재인지 알아보기 위해 재귀 함수와 관련된 문제를 출제하기로 했다. 팰린드롬이란, 앞에서부터 읽었을 때와 뒤에서부터 읽었을 때가 같은 문자열을 말한다. 팰린드롬의 예시로 AAA, ABBA, ABABA 등이 있고, 팰린드롬이 아닌 문자열의 예시로 ABCA, PALINDROME 등이 있다. 어떤 문자열이 팰린드롬인지 판별하는 문제는 재귀 함수를 이용해 쉽게 해결할 수 있다. 아래 코드의 isPalindrome 함수는 주어진 문자열이 팰린드롬이면 1, 팰린드롬이 아니면 0을 반환하는 함수다. #include #include int recursion(const char *s, int l, int r){ if(l >= r) return 1; else if(s[l..
지난 번 글에서 재귀함수의 정의와 구현방법에 대해 알아보았다. https://gnidinger-coding.tistory.com/37 [Java]재귀 함수(Recursive Functions) 출처: https://www.geeksforgeeks.org/recursive-functions/ Recursive Functions - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer.. gnidinger-coding.tistory.com 이 글을 바탕으로 이번 글에선 여러가지 적용 예를 들어본다. sayHello 이름 그대로 문자열 "Hello"를 n..
- Total
- Today
- Yesterday
- 스프링
- 자바
- java
- 중남미
- 기술면접
- 칼이사
- 지지
- 여행
- Python
- a6000
- spring
- 면접 준비
- 스트림
- 백준
- 유럽여행
- 야경
- RX100M5
- BOJ
- 파이썬
- 세계일주
- 리스트
- Backjoon
- 동적계획법
- 세계여행
- 알고리즘
- 세모
- 유럽
- 남미
- 맛집
- Algorithm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |