본문 바로가기

Python345

서울에서 김서방 찾기 문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 해결 방법 1. seoul 리스트 안에 "Kim" 문자열의 인덱스를 찾는다. 2. 지정된 문장안에 인덱스를 포함시켜 반환한다. def solution(seoul): i = seoul.index("Kim") answer = f"김서방은 {i}에 있다" return .. 2022. 1. 30.
수박수박수박수박수박수? 문제 설명 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 사항 n은 길이 10,000이하인 자연수입니다. 해결 방법 1. n을 2로 나누고 '수박'을 곱한다. 2. n이 2로 나누어 떨어지는지 불린 값으로 확인한다. 3. 딕셔너리를 활용해 불린 키에 해당하는 값을 찾는다. 4. True일 경우 2로 나누어 떨어지므로 '수박'을 곱한 문자열을 그대로 반환한다. 5. False일 경우 나머지가 1이 남은므로 '수박'을 곱한 문자열에 '수'을 덧붙여 반환한다. def solution(n): text = n // 2 * '수박' bool_dict = .. 2022. 1. 29.
DRF Tutorial 끝내기 목표 Django REST framework Tutorial 끝내기 목적 Django로 취업을 하기 위해서는 DRF를 공부해야함 DRF Tutorial을 통해 전반적인 기능을 눈에 익혀야함 결과 DRF 공식페이지를 통해 Tutorial 1~6번 까지 모두 완료하였음 해당 코드는 모두 깃헙에 push 하였음 serialization과 viewset 등 아직은 추상적이고 어려운 개념들이라 정확하게 이해되지 않음 앞으로 당장 내일 '술고' 프로젝트를 리펙토링하면서 DRF 적용해보기 viewset을 이용하여 DB데이터 반환해보기 레퍼런스 DRF 공식 홈페이지 2022. 1. 27.
약수의 합 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. (12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.) 제한 사항 n은 0 이상 3000이하인 정수입니다. 해결 방법 1. n의 절반에 해당되는 수 만큼 반복을 돌린다. 2. n과 나누어 떨어지는 수들을 합한다. 3. 마지막으로 n을 합한다. (n의 절반을 나눠 반복하였으므로 약수 중에 하나인 n을 추가로 더해주어야 함) def solution(n): answer = sum([i for i in range(1, n // 2 + 1) if n % i == 0]) + n return answer 출처: 프로그래머스 코딩 테스트 연습, https://programmers... 2022. 1. 26.
이상한 문자 만들기 문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 해결 방법 1. 문자열을 단어로 쪼갠다. 2. 단어를 반복하며 홀수는 대문자, 짝수는 소문자로 바꾼다. 3. 단어를 공백과 함께 다시 합친다. def solution(s): answer = '' words = s.split(' ') for word in words: for i, s .. 2022. 1. 25.
자릿수 더하기 문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한 사항 N의 범위 : 100,000,000 이하의 자연수 해결 방법 1. n을 이터러블한 문자열로 바꾼다. 2. 반복문을 통해 문자열을 리스트로 바꾼다. 3. 리스트의 요소들을 정수로 바꾼다. 4. 리스트의 요소들을 더해 합을 구한다. def solution(n): answer = sum([int(i) for i in str(n)]) return answer 2022. 1. 24.