문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 문제에서는 특정 조건이 일치하는지 확인하여 만족하는 값들만 반환하는 문제가 나온다. 이를 위해 필드 값을 확인하여야 한다. 필드의 값들을 확인하기 위해서는 `IN`, `LIKE`와 `REGEXP`를 활용하면 원하는 결과를 가져올 수 있다. 코드 루시와 엘라 찾기 SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN ('Lucy', 'Ella', 'Pickle', 'Rogan', 'Sabrina', 'Mitty') `Pyth..
문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 각 문제에서는 `ANIMAL_INS`, `ANIMAL_OUT`와 같이 동물이 보호소에 들어온 정보에 대한 테이블과 보호소에서 나간 경우에 대한 정보를 가진 테이블이 주어진다. 이때 문제에서는 `JOIN`을 통해 두 가지 테이블을 함께 조회하여 원하는 결과를 찾는 문제가 출제된다. `JOIN`을 이해하고, `ON`, `WHERE`를 적절히 이용하면 문제를 쉽게 해결할 수 있다. 코드 없어진 기록 찾기 SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM ANIMAL_OUTS OUT..
문제 14426번: 접두사 찾기 문자열 S의 접두사란 S의 가장 앞에서부터 부분 문자열을 의미한다. 예를 들어, S = "codeplus"의 접두사는 "code", "co", "codepl", "codeplus"가 있고, "plus", "s", "cude", "crud"는 접두사가 아니다. 총 N개의 문자 www.acmicpc.net 문제 풀이 M개의 문자들 중 N개의 문자의 접미사가 하나라도 되는지 확인하는 문제이다. 접미사 이므로 찾고자 하는 패턴의 수와 N개의 문자 중 일치하는지 확인하면 쉽게 해결할 수 있다. 코드 split을 활용한 풀이 from sys import stdin if __name__ == '__main__': n, m = map(int, stdin.readline().split()..
문제 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 문제 풀이 N개에 문자열로 이루어진 집합 S가 있을 때, M개에 문자열 중 집합 S에 포함되는 문자가 총 몇 개인지 구하는 문제이다. 문제를 풀기 위해서는 `딕셔너리`와 `in`을 활용하면 쉽게 풀 수 있다. M개의 문자열 중, N에 포함되는지 확인하기 위해서는 `if pattern in strings`와 같이 확인하면 된다. 파이썬의 `in` 연산은 리스트의 경우 `O(N)`의 시간이 소요되지만 딕셔너리의 경우 `O(1)`의..