본문 바로가기

전체 글

(40)
[코테준비] Python 해커랭크(HackerRank) 문제풀이 - 1 (Socks Merchant) * 코딩인터뷰시 기업들에서 널리 활용중인 해커랭크(HackerRank)의 Python 문제 정리. 1. 문제 주어진 양말들의 짝은 몇개인가? sort를 활용하여 풀 수 있었던 Easy 문제 이 문제는 어떤 분류에 속하는지를 모르겠다. 스스로 풀 수는 있었지만, 내 머리 속에 아직 각 문제별로 유형화가 덜 되어있어서 그런 것 같다. 문제를 좀 더 풀다가 한번 알고리즘/자료구조 개념정리를 하는 시간을 가져야겠다. 2. 정답 def sockMerchant(n, ar): temp = 0; cnt = 0; ar.sort() for i in range(0,n-1): if temp == 1 : temp = 0 continue if ar[i] == ar[i+1]: cnt += 1 temp = 1 return cnt S..
[코테준비] SQL 해커랭크(HackerRank) 문제풀이 - 피벗 - 6 * 코딩인터뷰시 기업들에서 널리 활용중인 해커랭크(HackerRank)의 SQL 문제 정리. 1. 문제 SQL 쿼리를 통해 피벗테이블을 구성하라는 문제이다. 주어진 테이블에는 각 직업별 사람의 이름과 그의 직업이 저장되어있다. 이를 통해 Doctor, Professor, Singer, Actor 순으로 피벗테이블을 작성하라는 문제 2. 정답 rowNumber를 저장하는 temp 테이블을 따로 만들고, 이를 grouping 해주어 출력해야 하는 문제 Medium 난이도 문제이지만 꽤나 까다롭다.. SQL에서의 변수설정법 (Ex; set @variable = n)을 통해 rownumber를 세팅해주어야 하고, 각 직업의 rowNum별 이름을 피벗테이블에 알맞게 이전 temp테이블에서 지정해주어야 하고 이름 ..
[코테준비] SQL 해커랭크(HackerRank) 문제풀이 - 직업정보 포메팅 - 5 * 코딩인터뷰시 기업들에서 널리 활용중인 해커랭크(HackerRank)의 SQL 문제 정리. 1. 문제 주어진 직업 테이블 (Occupations)에서 직업정보를 이름과 함께 문자 포멧팅하여 정렬하는 문제입니다. 2. 정답 문자열을 연결하는 명령어를 파악하여 조건에 맞게 포멧팅해줘야 합니다. 컴퓨터가 채점하기 때문에 띄어쓰기하나, 쉼표 하나도 틀리지 않게 정밀하게 포메팅해주어야 합니다. 제가 사용한 MySQL의 경우에는 concat을 통해 문자열을 결합할 수 있었습니다. Oracle 환경에서는 || 도 사용가능해서 처음부터 ||를 사용했다가 대차게 에러메시지로 까인.. ordered 조건도 정확하게 설정해주어야 합니다. 보통 order조건이 두번 이상 겹쳐서 해줘라는 조건들이 있는데 놓치기 쉬우니 세심하..