25.05.19 코딩 공부 시작

코딩 척척석박사 분들 피드백 환영합니다.

공대생이 코딩에서 살아남기

SQL 45

06.18 코드카타

Python3Q단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.s는 길이가 1 이상, 100이하인 스트링입니다.Adef solution(s): if len(s) % 2 == 0: num = len(s) // 2 return s[num-1:num+1] else: num = len(s) // 2 return s[num]풀이return s[num]: 중괄호 대신 소괄호를 쓰면 값 여러개가 나오지 않는다. My SQLQ다음은 어느 자동차 대여 회사에서 대여중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블입니다. CAR_RENTAL_COMPANY_CA..

06.17 코드카타

Python3Q정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.arr은 길이 1 이상인 배열입니다.인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.Adef solution(arr): if len(arr) == 1: return[-1] else: arr.remove(min(arr)) return arr풀이remove[min(arr)] → remove(min(arr))는 함수입니다, 괄호 ()를 써야 ..

06.13 코드카타(리스트 추가, 정렬, 특정 컬럼 내용like or =)

Python3Qarray의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.arr은 자연수를 담은 배열입니다.정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.divisor는 자연수입니다.array는 길이 1 이상인 배열입니다.Adef solution(arr, divisor): answer = [] for i in arr: if i % divisor ==0: answer.append(i) if len(answer) ==0: return [-1] ..

06.12 코드카타(문자열 포맷)

Python3QString형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.제한 사항seoul은 길이 1 이상, 1000 이하인 배열입니다.seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다."Kim"은 반드시 seoul 안에 포함되어 있습니다.Adef solution(seoul): place = seoul.index("Kim") answer = f"김서방은 {place}에 있다" return answerindex(): 리스트에서 특정 값 위치 찾기f"{ }": 문자열 포맷팅 방법My SQLQ..

06.11 코드카타(파이썬 반복문, SQL 조건문)

Python3Q1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다.예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요.1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. A1def so..

06.09 코드카타

Python3Q양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.x는 1 이상, 10000 이하인 정수입니다.Adef solution(x): n=0 for i in str(x): n += int(i) if x%n == 0: answer = True else: answer = False return answerdef solution(x): n=0 for i in str(x): n += int(i) ..

06.08 코드카타

Python3Q함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.Adef solution(n): return int(''.join(sorted(str(n), reverse=True)))sorted(str(n), reverse=True): 큰 숫자에서 내림차순 정렬 def solution(n): i = list(str(n)) i.sort(reverse=True) return int(''.join(i))list(str(n)): 문자열을 리스트로 변환i.sort(reverse=True): 큰 숫자에서 내림차순 정렬join(i): 리스..

06.07 코드카타

Python3Q임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.Adef solution(n): i = n ** 0.5 if i.is_integer(): return int((i + 1) ** 2) else: return -1풀이if문이 아닌 함수 자체에서 i = n ** 0.5 라는 변수에 저장 후 if i.is_integer(): 으로 if조건문에서 판단**: 제곱if i.is_integer()란?True: 값이 정수일 때False: 값이 소수일 때My SQLQ다음은 종합병원에 속한 의사 정보..

06.06 코드카타<문자열><date_format>

Python3Q문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.s의 길이는 1 이상 5이하입니다.s의 맨앞에는 부호(+, -)가 올 수 있습니다.s는 부호와 숫자로만 이루어져있습니다.s는 "0"으로 시작하지 않습니다.Adef solution(s): answer = int(s) return answerMy SQLQANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화..

2강. (06.05)

SQL 기본구조select # '데이터 조회' 의 명령어로 필수 구문from # '어디에서 데이터를 조회할까' 의 명령어로 필수 구문 where # 조건을 지정해주는 구문조건비교연산자 : , =, 다양한 구문 : IN, BETWEEN, LIKE여러가지 조건의 적용 : AND, OR, NOT계산하기SUM(): 합계AVERAGE(): 평균COUNT(): 데이터 개수MIN(): 최솟값MAX(): 최댓값범주별 연산GROUP BY 원하는 카테고리 컬럼결과 정렬ORDER BY 정렬을 원하는 컬럼오름차순(생략, ASC): 숫자가 점점 커지는 순서내림차순(DESC): 숫자가 점점 작아지는 순서HW 2Q음식 종류별 가장 높은 주문 금액과 가장 낮은 주문금액을 조회하고, 가장 낮은 주문금액 순으로 (내림차순) 정렬하..