[SQL] 특정 형질을 가지는 대장균 찾기

NoHae·2025년 2월 4일

SQL

목록 보기
56/86

문제 출처

코딩테스트 연습 > SELECT > 특정 형질을 가지는 대장균 찾기
https://school.programmers.co.kr/learn/courses/30/lessons/301646

문제 설명


접근 방법

문제에서 가장 중요한 부분은 몇번 형질이 어떤 수를 가졌나(2진수)를 알아내는 것이다.

해당 부분을 보고 각 ID의 GENOTYPE를 비교해보면서 유추해보면
1번 -> 0001
2번 -> 0010
3번 -> 0100
4번 -> 1000
이 나온다. 이후, where절에서 비트 연산을 통해 조건을 생성하면 된다.

select count(*) as COUNT
from ecoli_data
where not genotype & 2 and (genotype & 1 or genotype & 4)

알게된 점

사실상 이 문제는 이진수 문제이다.
나도 처음 이 문제를 접했을 때, 형질을 알아내는 방법에서 어떻게 형질의 이진수들을 알아내지 부분에서 막혔다.

문제푼 흔적

업로드중..

profile
노력 해보려고 하는 사람(00년생 소프트웨어융합학과, 24년 12월 부터 백엔드 및 코테 공부 시작)

0개의 댓글