MySQL 코테 대비 문법 정리
·
기록/TIL
복잡한 join, group by 등은 실무에서 워낙 많이 치다보니 너무 익숙한데 코테를 위해서는 조금은 잘 사용하지 않는 문법이 활용될 때도 있는 듯해서 벼락치기용으로 틈날때마다 기록 예정코테용 sql이랑 쿼리테스트용 sql은 꽤나 다른 느낌..이라서 쿼리테스트 대비용도 정리해놔야겠다 문자열 처리CONCAT- 여러개 인자 입력 가능함- 문자열 붙일 때 사용하면 됨ex) 프로그래머스 - 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기with high_view as( select board_id from used_goods_board where views = (select max(views) from used_goods_board))select concat('/home/grep/sr..
코딩테스트 자주 쓰는 개념 정리
·
기록/TIL
1. 에라토스테네스의 체- 소수 구할 때 사용- 소수는 1보다 큰 자연수 중 1과 자기 자신만을 약수로 갖는 수단순히 생각하면 2 ~ n-1까지 반복하면서 나누어 떨어지는지 확인하면 됨하지만 비효율적임 각 수가 갖는 약수는 해당 수의 제곱근을 기준으로 대칭을 이룬다ex) 16의 경우 1,2,4,8,16을 약수로 가지고 있고 양의 제곱근 4를 기준으로 대칭을 이룬다.-> 즉 2로 나누어 떨어진다는 걸 알면 8로 나누어 떨어지는 것도 당연함. 따라서 소수 판단은 2 ~ n**(1/2)까지만 하면 된다.def is_prime(): end = int(n**(1/2)) for i in range(2, end+1): if n % i == 0: return False return Tr..
그리디
·
기록/TIL
그리디란 지금 가장 최적인 답을 근시안적으로 택하는 알고리즘관찰을 통해 탐색 범위를 줄이는 알고리즘 현실적인 풀이 흐름1. 관찰을 통해 탐색 범위를 줄이는 방법을 고안한다.2. 탐색 범위를 줄여도 올바른 결과를 낸다는 강한 믿음을 가진다. 3. 믿음을 가지고 구현해서 문제를 통과한다.절망적인 풀이 흐름1. 관찰을 통해 탐색 범위를 줄이는 잘못된 방법을 고안한다.2. 탐색 범위를 줄여도 올바른 결과를 낸다는 강한 믿음을 가진다. 3. 믿음을 가지고 구현했는데 계속 틀린다. 코딩테스트에서의 추천 전략- 거의 똑같은 문제를 풀어봤거나 간단한 문제여서 나의 그리디 풀이를 100% 확신한다.-> 짜서 제출해보고 틀리면 빠르게 손절 - 100% 확신은 없지만 맞는 것 같은 그리디 풀이를 찾았다.-> 일단은 넘어가고..
배열, 정렬
·
기록/TIL
배열과 정렬 쪽은 기본적인 부분이기도 하고 기본적으로 구현된 함수가 있기 때문에 이를 활용하는 것이 좋음.배열10808.알파벳 개수s = input()cnt = [0] * 26for i in s: cnt[ord(i) - 97] += 1print(*cnt)- 아스키 코드를 활용하면 됨. ord() 함수를 알게 됨.- print(*list) 이런식으로 쓰게 되면이런 형태로 출력 가능.2577.숫자의 개수tot = 1num = [0] * 10for i in range(3): temp = int(input()) tot = tot * tempfor s in str(tot): int_s = int(s) num[int_s] += 1for i in range(10): print(num[..
DP(다이나믹 프로그래밍)
·
기록/TIL
바킹독님의 강의를 들으며 기록합니다.C++ 코드를 python으로 비슷하게 옮겨뒀기 때문에 참고하셔도 좋을 것 같습니다. DP는 특별한 개념이나 이런게 있다기 보다는 그냥 문제를 많이 풀어보는 것이 중요그리고 문제를 봤을 때 DP구나, BFS구나, 완전 탐색이구나 이런걸 구별할 줄 알아야 하긴 함.N이 작아서 전수 조사 가능해 보이면 완전 탐색2차원에서 최소 시간/ 경로 느낌이면 BFSN이 커서 전수 조사가 불가능해보이면 DP이런식으로 문제의 특성을 보고 알고리즘을 파악하는 훈련을 문제를 풀면서 계속해야함 이미 풀어본 문제와 비슷한 문제에 대해서는 금방 풀어낼 수 있도록 훈련해야 함.그러기 위해서 어떤 알고리즘이 쓰였는지, 왜 이 문제에 해당 알고리즘을 사용해야 하는지에 대해서 고민해보고 체화한 후에 넘..
DFS & BFS 정리
·
기록/TIL
스택- 먼저 들어 온 데이터가 나중에 나가는 형식(선입후출) -> 입구와 출구가 동일한 형태리스트 자료형 쓰면 됨.삽입 : append()삭제 : pop() 최상단 원소부터 출력 : stack[::-1]회하단 원소부터 출력 : stack큐- 먼저 들어 온 데이터가 먼저 나가는 형식(선입선출) -> 입구와 출구가 모두 뚫려있는 형태# 시간복잡도를 위해서 deque 라이브러리 사용하는 것이 좋다.from collections import dequequeue = deque()queue.append() # 삽입queue.popleft() # 삭제queue.reserve() # 역순으로 바꾸기 재귀 함수자기 자신을 다시 호출하는 함수- 스택에 데이터를 넣었다가 꺼내는 것과 마찬가지로 각각의 함수에 대한 정보가 실..
HackerRank SQL Weather Observation Station 5
·
기록/TIL
쿼리 친 지 오래돼서 슬슬 감을 잃는 것 같아 다시 시작sql 쿼리테스트 경우에는 mysql을 대부분 사용하므로 mysql 문법 까먹은 것들이 있는 경우만 기록할 예정 Query the two cities in STATION with the shortest and longest CITY names, as well as their respective lengths (i.e.: number of characters in the name). If there is more than one smallest or largest city, choose the one that comes first when ordered alphabetically.The STATION table is described as follow..
역검 개발 회사 합격자가 알려주는 AI 역량검사 꿀팁
·
기록/취준
25년 하반기부터 취업 준비를 시작하면서 잡다의 AI 역량검사를 정말 많이 봤습니다.cj, 기아, 마이다스, 한국콜마 등등..... 그러면서 꿀팁 관련한 정보들을 엄청 찾아다녔고, 역량검사로 떨어졌다는 생각은 하고 싶지 않아서 아주 열심히 준비를 했습니다.이를 통해서 얻은 저만의 꿀팁들을 전수드리고자 합니다. 실제로 역량 검사를 개발한 마이다스라는 회사 채용 과정에서의 역량 검사도 합격했으니 나름 "잘봤다"고 말할 수 있을 것 같습니다. 우선 저 같은 경우는- 결과표에 빨간 불 떠본 경험이 아예 없습니다.- 도형 순서 기억하기 게임을 틀리지 않습니다.- 나머지 게임들도 대부분 틀리지 않고 무난하게 맞추는 편입니다.게임을 잘하면 전략쪽이 높게 나옵니다. 다른 부분들은 인성 검사 쪽에서 많이 체크되는 것 같..
[TIL] 250911 - 프로그래머스 숫자의 표현
·
기록/TIL
문제 설명Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 수 있습니다.1 + 2 + 3 + 4 + 5 = 154 + 5 + 6 = 157 + 8 = 1515 = 15자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요.제한사항n은 10,000 이하의 자연수 입니다. 입출력 예nresult154입출력 예 설명입출력 예#1문제의 예시와 같습니다. ※ 공지 - 2022년 3월 11일 테스트케이스가 추가되었습니다. 나의 답# 연속된 수 = 1씩 늘어나는 숫자들로 구성되있는 거잖아# a, ..
LGAimers 7기 본선 후기
·
프로젝트
LGAimers를 처음 접한 건 4기였다.4기에 당시 머신러닝 스터디를 하던 분들과 나갔지만, 아쉽게 본선 진출에는 실패했었다. 이후에 인턴 생활과 대학교 졸업 요건을 다 맞춘 후에 진짜 대학교 졸업 전에 본선은 나가보고 싶다는 생각으로 다시 도전하였다. 처음 지원할 때, LGAimers 불합격이 있는지 궁금했었는데 아마 4기도 그렇고 7기도 그렇고 그냥 된걸로 봐서는 지원 요건만 맞다면 거의 합격인 듯하다.애초에 입력받는 정보도 거의 없다..워크넷에 등록해야하는게 있는데 거기에 자기소개서처럼 쓰는 곳이 있긴 하지만 전혀 채우지 않아도 잘만 합격했다.너무 걱정 안해도 된다 온라인 교육은 07월 01일 - 07월 28일까지 진행되었는데 4기에 이미 들은 내용이라 사실 제대로 듣진 않았다.+ 최근 모집을 다..