본문 바로가기
728x90
반응형

재귀4

[백준/Python] 10994 별 찍기- 19 문제: https://www.acmicpc.net/problem/10994  입력1  사용 알고리즘: 재귀  예제를 보고 규칙을 유추한 뒤 별을 찍는 문제네모 안에 네모 안에 네모.. -> 재귀를 이용해서 풀어야겠다  예제 입력11 예제 출력1* 예제 입력22 예제 출력2****** ** * ** ****** 예제 입력33 예제 출력3********** ** ***** ** * * ** * * * ** * * ** ***** ** ********** 예제 입력44 예제 출력4************** ** ********* ** * * ** * ***** * ** * * * * ** * * * * * ** * * * * ** * **.. 2024. 7. 17.
[백준/Python] 17478 재귀함수가 뭔가요? 문제: https://www.acmicpc.net/problem/17478  사용 알고리즘: 재귀  (난 정말 재귀가 싫어 엉엉ㅜㅜ)아아 알겠다 -> 어..? -> 아 진짜 알겠다 -> 어..? ㅜㅜ무한 반복했던 문제.. 사실 모든 ps 를 못하지만, 재귀는 더더 헷갈리고 어렵게 느껴진다하지만 어쩌겠어.. 이거 못하면 dfs 도 몬해.. 연습만이 살길.. 입력이 2일 때의 출력어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다. "재귀함수가 뭔가요?" "잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어. 마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지. 그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와.. 2024. 7. 16.
[백준/Python] 9184 신나는 함수 실행 문제: https://www.acmicpc.net/problem/9184  사용 알고리즘: 재귀, DP  사실 문제를 처음 읽고 어엉? 했지만 다시 보니 주어진 코드를 거의 그대로 사용해서 풀 수 있는 문제였다. 문제에서 주어진 코드는 재귀만을 사용해서 w(a, b, c) 를 구하기 때문에 시간이 너무 오래걸린다. 시간을 단축하기 위해 DP 를 사용해서 전에 계산했던 값을 가져다 쓰면서 시간을 줄였다.   - dp 배열 초기화 문제에 주어진 코드를 읽어보면 a, b, c 중 한개라도 20 을 초과하는 값이 있다면 w(20, 20, 20) 로 통일해 버린다. 그래서 n 값은 최대 50 까지 가능하지만, dp 배열은 51 까지 만들 필요없이 21 까지만 만들면 된다. dp = [[[0 for _ in ran.. 2024. 7. 14.
[백준/python] 15665 - N과 M (11) 문제: https://www.acmicpc.net/problem/15665  사용 알고리즘: DFS 깊이우선탐색, 재귀  이 문제를 읽었을 때 바로 DFS 가 떠올랐다. 우선 내려갈 수 있을만큼 내려갔다가 방문할 수 있는 곳을 방문하면서 출력하면 되겠다고 생각했다.   구현로직 1. M 개의 수열 -> 몇 개가 될지 모름 -> 재귀를 이용해 타고 내려가기2. 재귀가 끝나야 할 조건-> M 개의 수열이라고 했으니, 방문한 노드가 M 개가 되면 리턴3. 재귀를 마치고 재귀함수가 호출됐던 곳으로 돌아왔다면 방문할 수 있는 노드를 모두 방문한 것이므로 pop 으로 큐에서 제거4. for 문을 돌면서 다시 방문할 노드 탐색 import sysfrom collections import deque# 입력N, M = .. 2024. 6. 4.
728x90
반응형