[백준] 14659번 - 한조서열정리하고옴ㅋㅋ (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > [문제 요약] 한 봉우리에는 한 명씩 서 있다. (정황상 한조가 서있는듯하다) 자신보다 더 낮은 봉우리에 있는 적들만 처치할 수 있다. 방향은 오른쪽이다. 더 높은 봉우리에 있는 적을 만나면 포기하고 드러눕는다. 이 중 최고의 활잡이가 최대 몇 명을 처치할 수 있는 지를 구하라! https://www.acmicpc.net/problem/14659 🎨 풀이 💡 전체 코드 import sys N = int(sys.stdin.readline()) hanzo = list(map(int, sys.stdin.readline().split())) winner = hanzo[0] result = [] count = 0 for i in range(1,len(hanzo)): if winner < hanz..
[백준] 2869번 - 달팽이는 올라가고 싶다 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다. 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 🎨 풀이 💡 전체 코드 import sys a, b, v = map(int, sys.stdin.readline().split()) res..
[백준] 2864번 - 5와 6의 차이 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > 상근이는 2863번에서 표를 너무 열심히 돌린 나머지 5와 6을 헷갈리기 시작했다. 상근이가 숫자 5를 볼 때, 5로 볼 때도 있지만, 6으로 잘못 볼 수도 있고, 6을 볼 때는, 6으로 볼 때도 있지만, 5로 잘못 볼 수도 있다. 두 수 A와 B가 주어졌을 때, 상근이는 이 두 수를 더하려고 한다. 이때, 상근이가 구할 수 있는 두 수의 가능한 합 중, 최솟값과 최댓값을 구해 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/2864 2864번: 5와 6의 차이 첫째 줄에 두 정수 A와 B가 주어진다. (1 잘 풀었다고 생각한다. 손목이 좀 아픈데.. 요즘 좀 열심히 해서 그런걸까??! 그렇다면 조금 뿌듯할 것 같기도 ^ㅁ^.. 건강 잘 지키면서..
[백준] 17478번 - 재귀함수가 뭔가요? (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > [문제 요약] 떠나기 전까지도 제자들을 생각하셨던 JH 교수님은 재귀함수가 무엇인지 물어보는 학생들을 위한 작은 선물로 자동 응답 챗봇을 준비하기로 했다. JH 교수님이 만들 챗봇의 응답을 출력하는 프로그램을 만들어보자. https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 🎨 풀이 💡 전체 코드 def chatbot(num): if num == 0: return 0 else : chatbot(num-1) print(("____"..
[백준] 10870번 - 피보나치 수 5 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > [문제] 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다..
[백준] 10872번 - 팩토리얼 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > [설명] 팩토리얼 함수란 n이 주어졌을 때, 1부터 n까지 모두 곱한 값을 구하는 함수다. 예를 들면, 5! 값은 5 * 4 * 3 * 2 * 1 인 120이다. [문제] 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 🎨 풀이 💡 전체 코드 def factorial(num): if num > 1: return num * factorial(num-1) else : return 1 n = int(input()) print(factorial(n))..
[백준] 1026번 - 보물 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[0] × B[0] + ... + A[N-1] × B[N-1] S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안 된다. S의 최솟값을 출력하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 🎨 풀이 💡 전체 코드 import sys n = int(input()) A = ..
[백준] 11047번 - 동전 0 (파이썬)
·
알고리즘 공부/백준
📝 문제 설명 > 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 🎨 풀이 💡 전체 코드 import sys n, k = map(int, sys.stdin.readline()...