코딩테스트/프로그래머스 5

[70129] 이진변환 반복하기

입력받은 수에 대하여 0을 모두 제거하고 제거한 수를 이진수로 변환, 그 이진수가 1이 될 때 까지 반복한 뒤 제거한 0의 개수와 이진수로 변환한 총 횟수를 출력하면 된다. 나는 무식하게 recursive function으로 구현했는데, 어떤 분의 좋은 코드에서 멋진 코드를 발견해서 여기에 올린다. (프로필 정보가 없어서 어떻게 공유해야할 지 모르겠다.) s = Convert.ToString(101101, 2); System의 Convert. VS에서 친절하게 아래와 같이 설명해준다. Convert.ToString(int value, int toBase); Converts the value of a 32-bit signed integer to its equivalent string representati..

[SQL] 우유와 요거트가 담긴 장바구니(Oracle)

난이도 : Level 4 풀릴듯 말듯 했다... 쉬운듯 아닌듯.. subquery를 활용해서 풀었는데.. 뭔가 답만 나오면 다였던 수준. 더 clean하게 정리할 수 없을까? select cart_id from ( -- 여기에서 cart_id와 name으로 묶어서 count를 센다. select cart_id, name, count(*) as canmcount from cart_products where name in ('Milk', 'Yogurt') group by cart_id, name order by cart_id ) -- 여기에서 1차적으로 한 품목을 두개이상 담는 사람이 걸러진다. where canmcount < 2 -- 그 후 cart_id로 묶어주면 한 품목만 담았던 사람은 count시 1..

1
728x90
반응형