전체 글195 [재귀함수]★★백준 1914번 하노이 with Python3 https://www.acmicpc.net/problem/1914 1914번: 하노이 탑 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net 문제 내 풀이 def move(no: int, x: int, y: int) -> None: if no > 1: move(no-1, x, 6-x-y) print(f'{x} {y}') if no > 1: move(no-1, 6-x-y, y) n = int(input()) a = 2**n - 1 print(a) if n < 21: move(n, 1, 3) 해설 이해하지 못하고 답을 보고 구현만 했다..... 2021. 8. 10. [재귀함수] 백준 10869번 팩토리얼 with Python3 https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 내 풀이 def factorial(n: int): if n > 0: return n * factorial(n-1) else: return 1 n = int(input()) print(factorial(n)) 해설 재귀를 쓰고 싶었으나, 제대로 이해하지 못하고 단순한 for문의 대체로만 사용했다. 정답 풀이 def factorial(n): result = 1 if n > 0 : result = n * factorial(n-1) return result n = int(input()) print(fa.. 2021. 8. 10. [기초-구현] 백준 2628번 종이자르기 with Python3 https://www.acmicpc.net/problem/2628 2628번: 종이자르기 아래 과 같이 직사각형 모양의 종이가 있다. 이 종이는 가로방향과 세로 방향으로 1㎝마다 점선이 그어져 있다. 가로 점선은 위에서 아래로 1번부터 차례로 번호가 붙어 있고, 세로 점선 www.acmicpc.net 문제 내 풀이 length = list(map(int, input().split())) cutno = int(input()) hor = int(length[0]) ver = int(length[1]) horcord = [] vercord = [] for i in range(hor): horcord.append('*') for i in range(ver): vercord.append('*') counthor .. 2021. 8. 8. [기초-구현] 백준 1065번 한수 with Python3 https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 내 풀이 n = int(input())+1 alist = [] blist = [] for j in range(1, n): alist.append(j).. 2021. 8. 8. python 함수 정리 간편 정리 링크: https://dev-ku.tistory.com/153 [파이썬 기초] 03-1. 내장 함수 정리 📌 내장 함수 파이썬의 내장 함수는 모듈이나 패키지를 import하지 않고 바로 사용할 수 있다. 자주 사용하는 함수만 정리(사전 순으로 정리) 해보고 필요하면 그때 그때 찾아서 쓰면된다. 실습 dev-ku.tistory.com 클래스를 이용한 스택 구현. https://gorokke.tistory.com/129 [자료구조] 파이썬 스택(stack) 총정리 1. 스택이란? : 가장 나중에 넣은 데이터를 가장 먼저 빼낼 수 있는 데이터 구조로 Last In First Out(LIFO) 방식이다. (혹은 FILO : First In Last Out) 파이썬에서는 list [] 로 이미 구현되어.. 2021. 8. 8. 자문자답 -앞으로의 5개월을 생각해보며 당신에게 sw 사관학교 정글이란? 모래처럼 바람따라 이리 저리 날리던 내가, 뜨거운 열로서 단단하고 투명한 유리로 거듭나는 과정입니다. 5개월 간의 마음가짐은? 능동적으로 주입당하자! 입니다. 열정, 노력, 끈기는 적어도 저는 의지에만 달려있다고 생각하지 않습니다. 그렇기에 환경이 중요한 것이고, 환경이 바뀌면 사람도 바뀝니다. 저는 sw 사관학교 정글이라는 환경에 필사적으로 노출되고, 그 프로그램의 의지와 방향에 따라 바뀌어 가고 싶습니다. 그 후의 자신이 지금의 나보다 나아질 것이라는 믿음이 이 프로그램에 있습니다. 과거의 자신을 돌아본다면? 부족하지만 모자라지는 않지 않았나 싶습니다. 주머니를 뚫고 나온 송곳 같이 능력과 개성이 뛰어나진 않았지만, 그럼에도 돌이켜본다면, 조금만 더 열심히 할 걸 이.. 2021. 8. 8. [기초-소수] ★★백준 9020번 골드바흐의 추측 with Python3 https://www.acmicpc.net/problem/9020 문제 내 풀이 import math import sys n = 10000 a = int(math.sqrt(n)) primelist = [] for i in range(2, n-1): primelist.append(i) primeN = [] for i in range(2, a): primeN.append(i) for i in range(4, a): for j in range(2, i): if i % j == 0 and i in primeN: primeN.remove(i) power = 0 for j in range(len(primeN)): power = primeN[j] for i in range(2, n): c = power*i if c .. 2021. 8. 7. [기초-소수] ★백준 1978번 소수 찾기 with Python3 https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 예제 입력 4 1 3 5 7 내 풀이 import math n = 1000 a = int(math.sqrt(n)) primelist = [] for i in range(2, n-1): primelist.append(i) primeN = [] for i in range(2, a+1): primeN.append(i) for i in range(4, a): for j in range(2.. 2021. 8. 7. [기초-시간복잡도] ★백준 2869번 달팽이는 올라가고 싶다 with Python3 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 문제 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. 내 풀이 import sys import math a, b, v = map(int, sys.stdin.readline().split()) c = a-b s = (v-a)/c print(math.ceil(s)+1) 해설 처음으로 시간복잡도를 고려한 문제. 무려 시간제한이 0.15초 . 비효율적인 for문은 바로 컷이다. 그다지 정돈 되지못했고 완전히 이해하고 풀이를 .. 2021. 8. 7. 이전 1 ··· 14 15 16 17 18 19 20 ··· 22 다음