티스토리 뷰

 

문제

 

문제는 SELECT 문제  LEVEL2 문제에요.

JOIN으로 풀다가 틀려서 왜 틀렸는가 기록해볼려구요.

 

정답

SELECT DISTINCT ID, EMAIL, FIRST_NAME, LAST_NAME
FROM DEVELOPERS AS D
WHERE
    D.SKILL_CODE & (SELECT `CODE` FROM SKILLCODES WHERE NAME = 'Python')
    OR D.SKILL_CODE & (SELECT `CODE` FROM SKILLCODES WHERE NAME = 'C#')
ORDER BY ID;

 

내가 틀린점

 

단순히 Python, C#을 찾을려고 하는것이 문제의 패착이였어요.

 

D-165번 개발자의 경우 SKILL_CODE가 400 = 256 + 128 + 16 으로 

Python, Java, JavaScript의 기술의 가지고 있는데 

단순히 Python, C#의 코드만을 원했으니 문제를 틀릴 수 밖에 없었죠.

 

답은 &을 사용해서 비교하는것이였어요. 

 

2진법으로 비교를 해야되요.

 

165번 개발자   /  Python

110010000       /  100000000

 

AND 연산을 진행해요 (둘 다 1이면 1)

110010000

100000000

----------------

100000000

 

이러면 400이라도 256으로 검색이 되는거죠

 

 

 

 

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/276034

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

'알고리즘' 카테고리의 다른 글

백준 4673: 셀프 넘버 (실버)  (0) 2024.03.27
백준 10951번 (A+B -4)  (0) 2024.03.27
중성화 여부 파악하기 (Oracle)  (0) 2024.03.20
백준 3052 나머지 Java  (1) 2024.02.04
백준 1271번 엄청난 부자2 (Java)  (0) 2024.02.03
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함