전체 글

프론트 개발을 주로하는 사람
대외 활동/정보

[SW마에스트로] 소마 14기 2차 코딩테스트 후기

알고리즘먼저 필자 티어는 solved.ac 기준 골드 1이라는 점을 알려드립니다.백준 티어를 올리는 것을 좋아하지만, 알고리즘 문제들을 보고 풀면서 "나는 알고리즘 공부를 하는 거 보단 계속 개발하는 것이 맞는구나.. 싶었습니다. 준비하면서 정말 어려운 시간이었습니다. 1차 코테 후기 보러 가기

대외 활동/정보

[SW마에스트로] 소마 14기 1차 코딩테스트 후기

알고리즘먼저 필자 티어는 solved.ac 기준 골드 1이라는 점을 알려드립니다.백준 티어를 올리는 것을 좋아하지만, 알고리즘 문제들을 보고 풀면서 "나는 알고리즘 공부를 하는 거 보단 계속 개발하는 것이 맞는구나.. 싶었습니다. 준비하면서 정말 어려운 시간이었어요. 소마라는 좋은 목표를 품고 겨울 방학을 태웠지만, 이번 소마 1차 코딩테스트를 보며 멘탈도 많이 훼손당하고 일처리에 신물 났기 때문에 후회되는 부분도 많았습니다. 1차 코딩 테스트땐 무슨 일이 있었나?멘탈이 조금 약한 편이라고 저도 인정하기에, 이번 코테때 당황하지 않고 긴장하지 않기 위해서 청심환까지 먹고 시험에 임했습니다. 사건 발생 시각 14시 22분, 시험 시간이 14시부터 16시까지이기 때문에 1번 문제를 다 풀고 2번 문제를 차근..

소통하는 웅이

[생각] SW마에스트로 1차 코딩테스트를 앞둔 나는

2023년 2월 25일, 내일이 바로 소마 1차 코테 날이다. 코딩테스트를 준비하면서 정말 오만 생각이 다 들었던 거 같다. 처음 준비 하는 코딩 테스트였고, 소마를 하고 싶다는 간절함 때문에 많은 시간을 여기에 쏟았다. 구현 과제 같은 거였으면 어땠을까 생각이 들기도 하고, 그냥 나는 이 길과 맞지 않는 것인가?라는 생각도 했다. 문제를 풀어도 풀어도 알고리즘 공부 전과 현재 문제 푸는 속도, 정답률 등등 고려해 보면 별 차이가 나지 않는다. 다양한 유형의 문제들을 공부 했지만, 수학이 조금이라도 들어간 문제, 다이내믹 프로그래밍 같은 문제들은 문제 난이도가 매우 낮아도 접근 조차 하지 못한다. 방학 동안 프로그래머스에서 약 50문제, 백준에서 100문제 이상을 풀었고, solved.ac 티어가 Gol..

백엔드 개발/DB & SQL

[SQL] 코딩 테스트를 위한 SQL 정리

관계형 DB관리 시스템인 MySQL을 사용합니다. 코딩 테스트 전 알아야 할 SQL 문법들에 대해 정리합니다. 간단하게 DB 다루기 기본적으로 DB 안에는 여러 개의 이름이 존재하고, 각 DB 이름 안에는 여러 개의 테이블이 있습니다. 보통의 코딩 테스트 문제에서는 테이블을 1개에서 많으면 3개까지 제공하여 문제를 해결합니다. DB와 테이블 생성하기 MySQL에서는 CREATE 문을 활용하여 DB와 테이블을 만들 수 있습니다. CREATE DATABASE {DBNAME} USE {DBNAME} DBNAME 공간에 원하는 이름을 넣으면 그 이름을 가진 데이터 베이스가 생성됩니다. 생성한 데이터 베이스 사용을 위해 USE를 사용하여 데이터베이스를 선택할 수 있습니다. CREATE TABLE Test ( ID..

대외 활동/메가브레인 동아리

[동아리] 메가톤 2023(Feat. 인제생 앱)

메가톤이란? 먼저 메가콘은 학과 동아리 메가브레인과 해커톤을 합친 합성어로 학과 동아리 내에서 진행한 작은 해커톤이라고 생각하면 좋겠다. 우리 해커톤은 동아리원들 개발 사기 증진을 목적으로 개최된 간단한 행사이다. 메가톤은 기획 1주일, 개발 시간은 24시간으로 구성 되어 실질적인 코딩은 24시간 안에 이뤄지는 과정이다. 우리 팀이 만든 프로덕트 사실 출시를 하지 않기 때문에 이름을 정확히 정하진 않았는데, 시대생이라는 애플리케이션을 보며 우리가 계속 구상해 오던 앱이었기 때문에 별칭(?) 정도로 인제생이라고 지어줬다. https://devung.notion.site/2023-eb0fa635e58f46b3bc03bb41145a6980 메가톤 2023 상상을 실제로 만들어 내는 즐거움, 메가톤 2023 d..

파이썬 개발

[Python] 분리 집합, Union-Find에 대해서 알아보자!

분리집합(Union-Find)은 그래프 알고리즘 중 하나로 코딩 테스트 킬러 문제로 주로 나오는 알고리즘입니다. 서로소 집합 일단 유니온 파인드 알고리즘을 알기 전 disjoint sets을 먼저 이해해야 하는데요, 쉽게 설명하면 공통 원소가 없는 두 집합을 뜻합니다. 아래 그림을 보시면 왼쪽은 서로소 집합을 나타내고 오른쪽은 공통된 7이라는 원소 때문에 서로소 관계가 깨지게 됩니다. 따라서 왼쪽은 서로소 집합, 오른쪽은 서로소 집합이 아니게 되는 것이죠. Union-Find는 서로소 집합 자료구조를 만들 수 있습니다. 집합에서 노드들을 합치고(Union), 부모를 찾아(Find) 서로소 집합을 찾아내는 알고리즘인 것이죠. 한마디로 DSU(Disjoint Sets Union) 자료구조를 만들어 내는 과정..

백엔드 개발/Mega Waka Board 프로젝트

[#1/node.js] 서버에서 갑자기 오류를 내뿜는다..

23년도 1월 30일, 매일 잘 쓰고 있던 동아리 와카타임 서버가 메인 화면 제외 전부 먹통이 되어버렸다. https://jongung.tistory.com/287 [node.js] Mega Waka Board 백엔드 제작기 학기 중에 Node.js 공부를 하던 도중, 학교 개발 동아리 Megabrain에서 각 동아리원들 코딩 실태 조사(?) 느낌으로 도입했던 Wakatime이라는 서비스가 있었다. wakatime은 개발 시간 측정 서비스로 각 개발 jongung.tistory.com https://jongung.tistory.com/288 [React] Mega Waka Board 프론트 제작기 학교 개발 동아리 Megabrain에서 각 동아리원들 코딩 실태 조사 느낌으로 도입했던 Wakatime이라는..

파이썬 개발

[Python] 힙 자료구조인 heapq에 대해 알아보자!

힙의 개념 힙은 완전 이진트리로 구성된 자료구조이다. 우선순위 큐를 위해 만들어진 자료구조이다. 힙 자료구조로 우선순위 큐를 구현할 때 삽입 삭제 모두 O(logN) 연산을 가진다. 최소 힙: 부모 노드의 값이 자식노드의 값보다 항상 작은 힙 최대 힙: 부모 노드의 값이 자식노드의 값보다 항상 큰 힙 위 사진과 같이 항상 완전 이진트리로 구성되어 최소 최대 값을 빠르게 찾아낼 수 있도록 설계되어있다. heapq 모듈 파이썬에선 heapq 모듈을 이용하여 최소 힙과 최대 힙 모두 구현할 수 있다. heapq 메서드 heappush(heap, item) 힙 불변성을 유지하면서 item 값을 heap으로 푸쉬한다. heapq.heappop(heap) 힙 불변성을 유지하면서, heap에서 가장 작은 항목을 po..

Jongung
기록하는 습관