본문 바로가기

전체 글

(119)
[Daily] 어쩌다 3000, 5000, 그리고 어쩌다 방문자수 7000명! 오랜만의 블로그.호기롭게 시작한 코딩 블로그가, 개설 약 1년만에 방문자수 7000명을 넘었다.그만큼 코딩에 대한, 알고리즘에 대한 관심이 지금까지도 꾸준히 이어지고 있음을 알 수 있다.컴퓨터 공학 OS 지식 + 유명 알고리즘 문제들이 방문 통계의 상위를 이루고 있다, 코딩은 연습만이 답인 것을 다들 알고 있을 것이다.그래야 실전에서 막힘없이 술술 쳐내려 갈 수 있으니까,나는 여전히 KT에서 개발 업무를 하면서 지내고 있다.개발이라는 바다는 무척이나 넓고도 깊어서 배우고 공부할수록 끝이 없는 것 같다.2년이라는 취준시간을 나는 코딩을 하며 보냈고, 이는 결코 헛산 게 아니므로 나름의 자신감을 가지고  든든한 실력이 나를 뒷받침하고 있다고 믿고 매사 주어진 업무에 참여하게 되더라.지금 하는 것이 비록 막연..
[취업] 취준 2년 반, 100번의 서류 지원 그리고 단 1번의 최종 합격 / 2021 상반기 KT 최종 합격 19년도 2월 산업공학과 졸업 후 약 2년간 취업 준비를 하며, 18년 12월 ~ 19년 12월 : 삼성청년SW아카데미 1년 IT 교육과정을 수료했다. SSAFY만 하면 금방 취업이 될 줄 알았지만, 아니었다. 개발자가 되기 위한 나의 지식과 노력이 부족하다고 생각했다. 이 때부터가 진정한 취준 시작이었다. 20년 10월 ~ 11월 : 2달간 한국철도공사 협력사의 계약직 데이터 분석 연구원으로 활동했다. 이후에도 당연히 취준을 했다. 컴퓨터공학 전공 관련해서는 정보처리기사 / ADsP / SQLD 자격증을 취득했다. 그동안 공부한 것이 아까워서 대기업의 끈을 놓지 못했다. 20년에는 20년까지만 딱 대기업 준비하고 이후엔 막 쓸거야 했지만, 21년도에도 역시 대기업에만 지원했다. 끝까지 버텼다. 기약 없..
[자격증] SQLD 5일만에 취득 & 합격꿀팁 & 자료 공유 매우 늦은 후기다. 결과 나온 게 6월 25일이었는데,, 여러 일로 매우 바빴지 말이다. 각설하고, 결과는 합격이다! 월화수목금 딱 5일 공부해서 토요일 오전 10시에 시험 보고 아슬아슬?한 점수로 합격했다. 대부분의 자격증을 커트라인 + 10점 내외의 점수로 합격하는 것이 가장 효율적인 공부법이라 생각하는 1인으로서, 아주 성공적인 시간 투자였다. 참고로, SQL은 학부에서 한 학기 배웠고, 2개월간 DB 연구원으로 활동했던 경험이 있어서 기본 베이스는 어느정도 있는 수준이었다. 참, 책은 노랭이 SQLD 책을 풀었다. 거의 교과서, 바이블과 같은 교재로 설명할 필요가 없다. DB를 어느정도 아는 사람은 저 한 권으로 충분할 듯 싶다. 평소에 개발하면서도 쿼리에는 어려움이 없었어서 이정도 쿼리 쯤이야~..
[Programmers] 수식 최대화(Python) / 2020 카카오 인턴십 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr 2020 카카오 인턴십 기출문제이다. Level2 인데 생각보다 까다로웠다. 사용 알고리즘 : 순열, 구현 처음 참고한 코드는 아래 링크로 남겨둔다. 저 분의 코드 흐름은 같으나, 난 permutation 라이브러리로 순열을 구현해 반복문으로 가장 순위가 높은 순으로 계산했다. 계산 시에는 eval 함수로 나온 정수를 다시 문자열로 바꾸며 계속 계산을 진행했다. grapetown.tistory.com/63 파이썬 코드는 다음과 같다. from itertools..
[BOJ]1593. 문자 해독(Python) / Sliding Window 1593번: 문자 해독 첫째 줄에 고고학자들이 찾고자 하는 단어 W의 길이 g와 발굴된 벽화에서 추출한 문자열 S의 길이 |S|가 빈 칸을 사이에 두고 주어진다. (1≤g≤3000, g≤|S|≤3,000,000) 둘째 줄에 W, 셋째 줄에 S의 실 www.acmicpc.net W를 이루고 있는 g개의 그림문자와, 연구 대상인 벽화에 기록된 마야 문자열 S가 주어졌을 때, 단어 W가 마야 문자열 S에 들어있을 수 있는 모든 가짓수를 계산하는 프로그램을 작성하시오. 즉, 문자열 S안에서 문자열 W의 순열 중 하나가 부분 문자열로 들어있는 모든 경우의 수를 계산하라는 뜻이다. 사용 알고리즘 : Sliding Window 처음에 순열 구하는 코드로 접근했으나 시간초과로 틀리는 것을 보고, 슬라이딩 윈도우 방식으..
[BOJ] 21609. 상어 중학교(Python) / Simulation 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net 2021 상반기 삼성 SW역량테스트 기출문제이다. 이번에 출제된 4문제 중 내 기준 가장 까다롭고 시간이 많이 든 문제였다.. BFS의 효율을 높이기 위한 전략이 필요했다. 완전 구현 문제로 고도의 집중력을 발휘해야 한다. 특별히 사용한 알고리즘은 가장 큰 그룹 찾을 때와 이를 지울 때의 BFS 정도이고, 완전 구현 문제이다. 사용 알고리즘 : Simultaion (+ BFS) 사용 자료구조 : Max Heap(최대 힙) 1번 조건 - "크기가 가장 큰 블록 ..
[BOJ] 21611. 마법사 상어와 블리자드(Python) / Simulation 21611번: 마법사 상어와 블리자드 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그, 비바라기 마법을 할 수 있다. 오늘 새로 배운 마법은 블리자드이고, 크기가 N×N인 격자에서 연습하려고 한다. N은 항상 홀수이고, ( www.acmicpc.net # 2시간 30분 소요 사용 알고리즘 : 없음. 완전 구현(Simulation) 설명은 아래 주석으로 달아놓았다. 구슬 파괴 > 구슬 이동 > 이동 함수 안에서 구슬 폭발 > 구슬 변화 > 구슬 재배치 순으로 함수를 구성했다. 구슬 폭발 함수 explodeMarbles() 와 구슬 변화 함수 changeMarbles()는 복붙으로 만들어 매우 유사한 기능을 하고, 구슬 이동 함수 moveMarbles() 와 구슬 재배치 함수 drawMarbles..
[Programmers] 정수 삼각형(Python) / Dynamic Programming 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr # 14분 소요 사용 알고리즘 : Dynamic Programming(동적 계획법) (가장 아래 행-1) 행부터 가장 아래 행의 값들을 참고해 더 큰 값을 선택해 더하면서 현 위치 값을 갱신해 올라온다. 가장 상단 행까지 값을 모두 채우면 첫 값(triangle[0][0])을 리턴한다. 파이썬 코드는 다음과 같다. def solution(triangle): for r in range(len(triangle)-2, -1, -1): for c in range(r+1): triangle[r][c] += max(triangle[r+1][c], ..