본문 바로가기

반응형

프로그래밍/BOJ_Python 목표는 Diamond

(17)
[Python | 4153] 직각삼각형 [Python | 4153] 직각삼각형 주어진 삼각형의 세 변에 대하여 삼각형이 직각인지 아닌지 구하는 문제. 피타고라스의 정리 문제이다. try1, solved! # 4153 while True: x, y, z = map(int, input().split()) if x==0 and y==0 and z == 0: break lst = [x, y, z] lst = sorted(lst) right = lst[2]**2 left = lst[1]**2 + lst[0]**2 if right == left: print('right') else: print('wrong') 첨에 쉽다고 생각했는데 풀다보니 어...? 가장 긴 변의 제곱에 대해서 다른 변의 제곱의 합과 비교해야하네? 하는 생각이 들어 고민한 문제. so..
[Python | 11050] 이항계수 [Python | 11050] 이항계수 문제 푸는 이유 진짜 오랜만에 글쓴다😥 12월 중순까지 프로젝트 3개, 졸업논문 남았지만 뭔가 오늘은 폭풍의 눈같은 상황인 것 같당. 내일 되면 발표 리허설, 프로젝트 미팅 2개 있는데ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 난 왜 마음이 편안한거지 그래서 편안한김에 오랜만에 알고리즘 문제 풀어보려고 한다. 내년 3월까지 solved.ac class 문제 다 풀고 싶당 문제 내용 두 수가 주어졌을 때 이항계수를 구하는 문제이다. 이항계수란 전체 n개의 항중 k개를 고르는 경우의 수를 의미한다. 이항계수 식만 알면 쉽게 구현할 수 있다. 💔 try1. failed! 나레기 이항계수 어케구하는지 모름,,, # 111050: 이항계수 구하기 n, k = map(int,..
[1181 | python] 단어 정렬 [1181 | python] 단어 정렬 🎉조건 알파벳 소문자로 이루어진 N개의 단어가 들어오면 정렬하는 프로그램을 작성하기 1. 길이가 짧은 단어 우선 2. 길이가 같은 경우 사전 순으로(abc...) 단 중복된 단어는 제거 🎉접근방식 먼저 N만큼 단어를 입력받고 리스트에 저장 set을 통해 중복 제거 길이에 따라 정렬. 이때 길이가 같은 경우 알파벳순으로 정렬 정리한 리스트 리턴 🎉 Solution # 1181 N = int(input()) word_list = [] for _ in range(N): word = input() word_list.append(word) word_list = list(set(word_list)) #1 word_list.sort() #2 word_list.sort(key=l..
[1259 | Python] 팰린드롬수 [1259 | Python] 팰린드롬수 🎉문제 총평 흑흑 쉬운데 어려워 일주일 쉬었더니 뇌가 굳은것같다 더 정진할것 🎉조건 앞부터 읽어도, 뒤부터 읽어도 똑같은 숫자를 팰린드롬수라고 한다. 여러개의 숫자 입력시 각 수가 팰린드롬수인지 판단하자. 팰린드롬수인 경우 yes를, 아닌 경우 no를 출력하라. 🎉접근방식 처음에 인덱싱을 사용하려다가 실패해서 reverse 함수로 접근. reverse 함수만 사용하면 쉽게 뒤집을 수 있다고 생각했는데 reverse를 사용하니 str이나 int가 아니라 reverse 형태였다. 그래서 추가적으로 list()랑 join을 사용해야 했다. 🎉try1: 틀렸습니다! # 1259 num1 = input() num_list = list(reversed(num1)) # num1..
[2566 | Python] 최댓값 🎉문제 총평 ez~ 옛날이었으면 이정도에도 어버버 했을텐데! 그래도 성장하긴 했던거구나 나자신...기특해... 🎉조건 🎉접근방식 for문을 사용해서 9*9 행렬을 제작한다 for문에서 각각의 요소들의 최댓값을 비교한다? 🎉try1: solved!😍 # 2566 lst = [] max_value = 0 # 행마다 입력하고 각 행의 최댓값을 찾음 for i in range(9): new_list = list(map(int, input().split())) new_max = max(new_list) # 기존의 최댓값보다 새로운 행의 최댓값이 더 큰 값일경우 값을 변경 if max_value
[2475, 2920, 10172 | python] 검증수, 음계, 개 🎉문제 총평 solved.ac에서 가장 기본적인 class1을 통과하기 위해 남은 마지막 3문제! [2475] 검증수 주어진 5개의 숫자들을 각각 제곱하고 합한 뒤 10으로 나눈 나머지를 출력한다. try1: runtime error! import numpy nums = map(int, input().split()) sqrt_nums = np.sqrt(nums) sum_sqrt = np.sum(sqrt_nums) print(sum_sqrt//10) numpy를 np로 정의하지 않음 nums가 리스트가 아니었다?! try2: 런타임 에러! 위에서 문제라고 생각한 부분들을 고쳤는데도 여전히 런타임 에러가 나왔다. import numpy as np nums = list(map(int, input().split..
[27866 | Python] 문자와 문자열 [27866 | Python] 문자와 문자열 class 1+ 문제. 정답률도 69퍼센트로 매우 높다. 사실 안풀어도 아는 문제인데 걍 다 풀려고 풀기로함 파이썬과 다르게 인덱스가 1부터 시작한다! 이 점만 주의하면 될듯 try1: solved a = input() b = int(input()) print(a[b-1])
[자료구조] Backtracking 기법 [자료구조] Backtracking 기법 DFS와는 다르게 탐색중인 경로에 답이 없다고 판단시 탐색시작 노드의 부모로 되돌아가 다른 방향으로 탐색하는 기법 해당 경로에 답이 있을 것 같은 경우 "유망하다"라고 말한다 DFS 탐색에서 유망한 조건만을 만족하는 방향만을 살펴보는 방식 def dfs(): if promising(x): dfs() def promising(x): if 유망한경우 : return True return False 예제1. 백준 9663 백트래킹 이용 DFS를 수행하면서, 유망하지 않은 경로면 빽 출처 [Algorithm] 백트래킹(Backtracking): 안될 싹은 미리미리 가지치기 DFS 탐색 중 가능성이 없는 방향은 가지 않는 '백트래킹' 기법에 대해서 알아보겠습니다. [ Co..

반응형