전체 글502 백준 2447 파이썬 - 별 찍기 10 1. 문제 링크 https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 2. 나는 어떻게 생각했는가? - 문제는 이해했지만, 풀이가 잘 이해가 안간다. - 수학적 사고력이 많이 부족하다는 것을 느끼게하는 문제 - 지금 당장 이해가 안가는 문제를 붙잡고 있으려니, 시간이 아깝다고 생각해서 패스한다. 3. 정답 코드 def draw_star(n) : global Map if n == 3 : Map[0][:3] = Map[2][:.. 2021. 8. 17. 백준 10870 파이썬 - 피보나치 5 1. 문제 링크 https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 2. 나는 어떻게 생각했는가? def fibonacci(n): if n 2021. 8. 17. 백준 10872 파이썬 - 팩토리얼 1. 문제 링크 https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 2. 나는 어떻게 생각했는가? def factorial(n): result = 1 while n > 0: result *= n n -= 1 factorial(n) return result n = int(input()) print(factorial(n)) - 내가 작성한 코드는 재귀적이다 라는 느낌이 없다. - 재귀적이기 보다는 콜백의 느낌이 가까운 것 같다. 3. 정답 코드 def factorial(n): if n == 0: return 1 else: return n * factori.. 2021. 8. 17. 20. 컴퓨터구조 - 프로그램과 프로그래밍 언어 0. 시작하기 전에 - 이전 포스팅 까지 CPU의 내부구조에 대해서 다음과 같이 공부했다. ▶ CPU의 동작방식(연산 방법) ▶ CPU의 내부 연산처리에 필요한 요소(여러가지 레지스터, 명령어, 마이크로연산) ▶ CPU 설계방식 ▶ CPU가 입출력을 처리하는 과정 - 지금까지 HW에 집중했다면, - 이번 포스팅 부터는 HW를 더욱 잘 활용하기 위한, SW적인 측면에 대해서 알아볼 예정이다. 1. 프로그램이란? - 컴퓨터는 복잡한 계산(= 산술논리연산)을 하기 위한 목적으로 만들어진 도구다. - 그러므로 컴퓨터에게 어떤 작업을 시킨다는 것은 어떤 계산을 시킨다는 의미다. - 사람은 어떤 것을 계산하기 위해 순차적인 연산과정을 거친다. 컴퓨터도 동일하다. - 이 순차적인 연산과정을 컴퓨터에게도 알려줘야 하는.. 2021. 8. 17. 백준 1002 파이썬 - 터렛 1. 문제 링크 https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 2. 나는 어떻게 생각했는가? 아무리 생각해봐도 어떻게 접근해야하는지 모르겠다. 그래서 해답을 찾아보았다. approach - 기하학의 원과 원의 접점의 개수를 구하는 방법을 사용한다. 입력값 x, y는 원의 중심 좌표를, r은 원의 반지름을 의미한다. 두 원의 중심 사이의 거리는 피타고라스의 정리를 이용하여 구한다. 두 원의 접점이 생길 수 있는 경우의 수 (https://mathbang.net/101) 1. 두 원의 중심이 같은 .. 2021. 8. 17. 백준 3053 파이썬 - 택시 기하학 1. 문제 링크 https://www.acmicpc.net/problem/3053 3053번: 택시 기하학 첫째 줄에는 유클리드 기하학에서 반지름이 R인 원의 넓이를, 둘째 줄에는 택시 기하학에서 반지름이 R인 원의 넓이를 출력한다. 정답과의 오차는 0.0001까지 허용한다. www.acmicpc.net 2. 나는 어떻게 생각했는가? # 유클리드 기하학 원의 넓이 = PI * r^2 # 택시 기하학 원의 넓이 = 2 * r^2 from math import pi r = int(input()) print(r ** 2 * pi) print(2 * r ** 2) - 유클리드 기하학과 택시 기하학 원의 넓이 공식을 구글링 했다. 2021. 8. 17. 백준 4153 파이썬 - 직각삼각형 1. 문제 링크 https://www.acmicpc.net/problem/4153 4153번: 직각삼각형 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. www.acmicpc.net 2. 나는 어떻게 생각했는가? # 내가 생각한 풀이 # 피타고라스의 정리를 이용하여 푼다. while True: case = list(map(int, input().split())) if sum(case) == 0: break else: case.sort() if case[0] ** 2 + case[1] ** 2 == case[2] ** 2: print("right") else: print("wro.. 2021. 8. 17. 백준 3009 파이썬 - 네 번째 점 1. 문제 링크 https://www.acmicpc.net/problem/3009 3009번: 네 번째 점 세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오. www.acmicpc.net 2. 나는 어떻게 생각했는가? # 내가 생각한 풀이 # 사각형의 4개의 좌표는 다음과 같은 조합을 이룬다 # min x, min y # min x, max y # max x, min y # max x, max y # 이 조합을 이용하면 max x와 min x, max y와 min y는 각각 2개씩을 갖는다. # 만약 1개씩 부족한 조합이 있다면, 비어있는 좌표가 정답이 된다. x_list = [] y_list = [] for _ in range(3): x, y .. 2021. 8. 17. 백준 1085 파이썬 - 직사각형에서 탈출 1. 문제 링크 https://www.acmicpc.net/problem/1085 1085번: 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램 www.acmicpc.net 2. 나는 어떻게 생각했는가? x, y, w, h = map(int, input().split()) right_distance = w - x left_distance = x top_distance = h - y down_distance = y result_x = 0 result_y = 0 if right_distance >= left_distance: resul.. 2021. 8. 17. 열정을 다 한다는 것에 대하여 2021년 8월 16일 오늘은 나에게 역사적인 날이다. 나는 취미로 성공한 사람들의 멘탈에 대한 이야기를 유튜브에서 자주 듣는다. 나를 재평가하고 보듬어 주고 채찍질하고 다시 용기를 얻을 수 있는, 아주 고귀하고 성스러운 시간을 보낼 수 있기 때문이다. 그렇게 듣고 되새긴 수 많은 얘기들 중에 한가지, 공감하지 못한 이야기가 있다. "당신이 정말 하고 싶고 열정을 다 하는 일이 있다면, 자다가도 눈이 번쩍 떠진다." 나에게도 그런 것이 생길까? 생길 수 있을까? 만약 그렇다면, 무엇이 나를 자다가도 눈을 뻔쩍 뜨게 할까? 내 안에 아직 존재하지 않는 답을 묻는 질문에 밤을 설치다 그렇게 마음 한켠 묻어두었다. 나는 주말에 카페알바를 한다. 오픈 10시부터 오후 5시까지 일을 하고, 카페가 닫을 때까지 시.. 2021. 8. 16. 백준 9020 파이썬 - 골드바흐의 추측 1. 문제 링크 https://www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아 www.acmicpc.net 2. 나는 어떻게 생각했는가? def prime(n): #에라토스테네스의 체 a = [True] * n sqrt = int(n ** 0.5) for i in range(2, sqrt + 1): if a[i]: for j in range(i + i, n, i): a[j] = False return [i for i in range(2, n) if a[i] == Tr.. 2021. 8. 14. 백준 4948 파이썬 - 베르트랑 공준 1. 문제 링크 https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 2. 나는 어떻게 생각했는가? def check_sosu(n): two_n = 2 * n a = [False, False] + [True] * (two_n - 1) primes = [] for i in range(2, two_n + 1): if a[i]: primes.append(i) for j in range(2 * i, two_n + 1, i): a[j] = False .. 2021. 8. 14. 이전 1 ··· 18 19 20 21 22 23 24 ··· 42 다음