[TIL] 23.02.04

문종현·2023년 2월 4일
0

TIL

목록 보기
77/119
post-custom-banner

👉 오늘 한 일

  • 프로그래머스 문제풀이(level 0)
  • 프로그래머스 SQL 문제풀이(level 1)

프로그래머스 문제풀이

1. 숨어있는 숫자의 덧셈 (2)

  • 정답률 80%
  • 연속된 수를 하나의 수로 보기 위해 문자열을 .으로 대체한 뒤 split 하고, 리스트를 순회하며 숫자를 더해줌
import re
def solution(my_string):
    result = 0
    s = re.sub("[a-zA-Z]", ".", my_string)
    s = s.split(".")
    for i in s:
        if i == "":
            pass
        else:
            result += int(i)
    return result
  • 다른 사람의 풀이
    • 연속된 수를 하나의 수로 보기 위해 문자열들은 띄어쓰기로 처리한 뒤 숫자들을 더함
def solution(my_string):
    s = ''.join(i if i.isdigit() else ' ' for i in my_string)
    return sum(int(i) for i in s.split())

2. 이진수 더하기

  • 정답률 80%
  • 10진수로 변환하기 위해 이진수를 의미하는 접두어를 붙여준 다음 더한 뒤 다시 2진수로 변환
def solution(bin1, bin2):
    b1 = "0b" + bin1
    b2 = "0b" + bin2
    return bin(int(b1, 2) + int(b2, 2))[2:]
  • 다른 사람 풀이
    • 접두어(0b)를 안붙이고 int() 의 인자로 몇진수인지만 넣어주면 변환해준다!
def solution(bin1, bin2):
    answer = bin(int(bin1,2) + int(bin2,2))[2:]
    return answer

3. 7의 개수

  • 정답률 79%
  • 리스트의 숫자들을 문자열로 만들어 순회하며 7을 count
def solution(array):
    result = 0
    for num in array:
        result += str(num).count("7")
    
    return result
  • 다른 사람 풀이
    • 리스트 전체를 문자열로 만들어 7을 count
def solution(array):
    return str(array).count('7')

SQL

1. 평균 일일 대여 요금 구하기

SELECT ROUND(AVG(DAILY_FEE)) AVERAGE_FEE
FROM CAR_RENTAL_COMPANY_CAR
WHERE CAR_TYPE = "SUV"

2. 강원도에 위치한 생산공장 목록 출력하기

  • left() 로 처음 세 글자가 강원도인 것만 추출
SELECT FACTORY_ID, FACTORY_NAME, ADDRESS
FROM FOOD_FACTORY
WHERE LEFT(ADDRESS, 3) = "강원도"
ORDER BY FACTORY_ID

3. 조건에 맞는 도서 리스트 출력하기

  • PUBLISHED_DATE의 포맷을 예시와 맞추기 위해(시분초 삭제) left() 사용
SELECT BOOK_ID, LEFT(PUBLISHED_DATE, 10) PUBLISHED_DATE
FROM BOOK
WHERE YEAR(PUBLISHED_DATE) = '2021' AND CATEGORY = '인문'
ORDER BY PUBLISHED_DATE

4. 과일로 만든 아이스크림 고르기

  • 두 개 테이블을 조인해서 각 테이블에서 필요한 정보를 where절에서 사용
SELECT F.FLAVOR
FROM ICECREAM_INFO I
JOIN FIRST_HALF F
ON I.FLAVOR = F.FLAVOR
WHERE F.TOTAL_ORDER > 3000 AND I.INGREDIENT_TYPE = "fruit_based"
ORDER BY F.TOTAL_ORDER DESC
profile
자라나라 새싹새싹🌱
post-custom-banner

0개의 댓글