본문 바로가기

Python

[BOJ] 백준 2447 파이썬 - 별 찍기 def rect_star(x, y, n, ls): if n == 3: ls[x + 1][y + 1] = " " else: temp = n // 3 for i in range(x + temp, x + 2 * temp): for j in range(y + temp, y + 2 * temp): ls[i][j] = " " for i in range(0, n, temp): for j in range(0, n, temp): rect_star(x + i, y + j, temp, ls) n = int(input()) ls = [["*" for i in range(n)] for i in range(n)] rect_star(0, 0, n, ls) for i in range(0, n): for j in range(0, n).. 더보기
[Django] 초보 프로젝트 연습하기 추천 사이트 안녕하세요 제이삼사 입니다 파이썬을 이용한 django를 이용해 백엔드 개발을 계획하고 계신 분들에게 프로젝트 연습하기 좋은 사이트를 추천드리려고 해요 django를 이용해 백엔드 개발을 하기 위해서는 django 자체를 공부하는 것도 중요하지만 스스로 프로젝트를 해보며 직접 익히는 게 더 중요하다고 생각해요 그래서 이번에 추천해 드릴 사이트는 리얼파이썬 이라는 사이트입니다 https://realpython.com/ Python Tutorials – Real Python Learn Python online: Python tutorials for developers of all skill levels, Python books and courses, Python news, code examples, arti.. 더보기
[BOJ] 백준 10870 파이썬 - 피보나치 수 5 유명한 수열 중에 하나인 피보나치 수열을 재귀함수로 구현하는 문제입니다. def fibonacci(n): if n == 0: return 0 elif n == 1: return 1 return fibonacci(n-1) + fibonacci(n-2) 먼저 n 이 0 과 1 일때는 두번 루프를 돌 수 있는 수의 개수가 되지 않기 때문에 0과 1에 대한 피보나치 수를 지정 해주어야 합니다. 그 이후 2 부터는 fibonacci(0) + fibonacci(1)로 함수가 돌기 시작하기 때문에 지정해 줄 필요가 없습니다. n = int(input()) print(fibonacci(n)) 정의를 해준 함수 아래 우리가 대입할 수를 불러와 print해주면 끝납니다. [전체 코드] def fibonacci(n): if.. 더보기
[BOJ] 백준 10250 파이썬 - ACM 호텔 높이 h, 폭 w 로 이루어진 ACM 호텔의 n 번째 손님에게 최단거리에 위치한 방을 배정해주는 문제이다. for i in range(t): h, w, n = map(int, input().split()) 따져줘야 하는 경우가 두 가지가 있다. 첫 번째로, n번째 손님이 맨 꼭대기 층에 배정되는 경우이다. if n % h == 0: col = n / h floor = h 맨 꼭대기 층이라는 말은 n이 h의 배수라는 소리이다. 그 경우 층은 항상 h와 같다. 두 번째는, 그 외의 경우이다. else: col = n // h + 1 floor = n % h 이 경우, 층수는 n을 h로 나눈 나머지이다. 호수는 나머지가 존재하므로 그 +1 한 그 다음칸이 호수가 된다. 방 번호는 "층수 x100 + 호수"를 .. 더보기
[BOJ] 백준 2869 파이썬 - 달팽이는 올라가고 싶다 달팽이가 입력된 v 만큼의 거리를 하루동안 a-b 만큼 이동할 때 걸리는 총 시간을 구하는 문제입니다. import sys a, b, v = map(int, sys.stdin.readline().split()) 일단 시간을 최대한 줄여주기 위해 import sys를 사용했습니다 (안해도 상관X) 이 문제의 핵심은 경우의 수를 일일이 따져주는 것이 아니라 v 더보기
[BOJ] 백준 2775 파이썬 - 부녀회장이 될테야 4층 1 6 21 56 126 252 3층 1 5 15 35 70 126 2층 1 4 10 20 35 56 1층 1 3 6 10 15 21 0층 1 2 3 4 5 6 이런 식으로 0층은 열에 따라 1씩 증가하고 층이 올라가면 구하고자 하는 방의 왼쪽방 인원 + 아래쪽방 인원 을 해주면 해당 방의 인원이 구해지게 된다 인원을 지정해주기 전에 미리 해당 방까지 도달하기 위해 0으로 채워진 리스트를 만들어 숫자를 대체하여 저장해 가며 채워나가야 한다. t = int(input()) for i in range(t): k = int(input()) n = int(input()) resNum = [[0 for col in range(n)] for row in range(k+1)] # 층별로 인원을 구분 이렇게 층별.. 더보기
[BOJ] 백준 4948 파이썬 - 베르트랑 공준 백준 4948번 베르트랑 공준 문제입니다. n과 2n 사이에 적어도 소수가 하나 존재한다는 내용입니다. 이 문제는 1000 단위 정도까지는 일반적인 소수를 구하는 방식으로 하면 별 문제가 없지만 숫자가 커지면 일반적인 루프를 돌려 일일이 소수임을 판단해주는 방식으로는 시간제한에 걸리게 됩니다. 그렇기 때문에 제한조건을 활용하여 코드를 짜면 됩니다. 문제에서 제한조건은 1 더보기