프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 설계
파이썬의 256 와 &해서 256이거나
C#의 1024 와 & 해서 1024면 된다고 생각하고 코드를 작성했다.
문제 풀이
오답
SELECT ID, EMAIL, FIRST_NAME, LAST_NAME
FROM DEVELOPERS
WHERE (SKILL_CODE & 256) = 256 OR (SKILL_CODE & 1024) = 1024
ORDER BY ID;
코드 실행에선 성공으로 나왔으나 제출 후 채점하니, 1개 빼고 전부 오답 처리
정답
SELECT ID, EMAIL, FIRST_NAME, LAST_NAME
FROM DEVELOPERS
WHERE SKILL_CODE & (SELECT CODE FROM SKILLCODES WHERE NAME = 'Python')
OR SKILL_CODE & (SELECT CODE FROM SKILLCODES WHERE NAME = 'C#')
ORDER BY ID;
모든 케이스 정답 처리
정리
문제의 의도가 언어 이름을 기준으로 찾는 것
처음 푼 풀이는 하드코딩으로 푼 것임
다른 테스트케이스에서 스킬코드 테이블이 바뀔 수 있다.
문제를 보면 예를 들어... 라고 제시
'코딩테스트 > SQL' 카테고리의 다른 글
[프로그래머스 LV2][SQL] 중복 제거하기 (0) | 2025.03.29 |
---|---|
[프로그래머스 LV2][SQL] 가격대 별 상품 개수 구하기 (0) | 2025.03.28 |
[프로그래머스 LV2][SQL] 업그레이드 된 아이템 구하기 (0) | 2025.03.28 |
[프로그래머스 LV2][SQL] 카테고리 별 상품 개수 구하기 (0) | 2025.03.24 |
[프로그래머스 LV2][SQL] 노선별 평균 역 사이 거리 조회하기 (0) | 2025.03.24 |