/Algorithm

매일 1~2문제씩 푸는 나만의 코딩 테스트 스터디입니다.

Primary LanguageJava

혼자서 하는 코딩 테스트 스터디

📌 문제를 풀기 전에 가장 먼저 생각해야할 것들

적절한 알고리즘 설계하기

  • 시간 제한이 1초인 문제를 만났을 때, 일반적인 기준은 아래와 같음
    • N의 범위가 500인 경우: 시간 복잡도가 $O(N^3)$ 인 알고리즘을 설계하면 문제를 풀 수 있다.
    • N의 범위가 2,000인 경우: 시간 복잡도가 $O(N^2)$ 인 알고리즘을 설계하면 문제를 풀 수 있다.
    • N의 범위가 100,000인 경우: 시간 복잡도가 $O(NlogN)$ 인 알고리즘을 설계하면 문제를 풀 수 있다.
    • N의 범위가 10,000,000인 경우: 시간 복잡도가 $O(N)$ 인 알고리즘을 설계하면 문제를 풀 수 있다.

📅 일정표 <매일 1~2문제>

일차 1 2
1일차(22.08.18) 프렌즈4블록 멀쩡한 사각형
2일차(22.08.19) 신고 결과 받기 124나라의 숫자
3일차(22.08.22) 짝꿍
4일차(22.08.23) 3총사
5일차(22.08.27) 같은 숫자는 싫어
6일차(22.08.29) 크레인 인형뽑기 게임 ValidAnagram
7일차(22.08.30) 위장
8일차(22.09.02) 알고리즘 연습 모음
9일차(22.09.06) 알고리즘 연습 모음2
10일차(22.09.07) 내적
11일차(22.09.13) 최댓값과 최솟값 알고리즘 연습문제 모음3
12일차(22.09.13) reverse isPalindrome
13일차(22.09.19) JadenCase 문자열 만들기
14일차(22.09.25) 뉴스 클러스터링
15일차(22.09.26) 캐시
16일차(22.09.27) k진수에서 소수 개수 구하기
17일차(22.10.04) 코테 풀이 모음(Level 1 1페이지 ~)
18일차(22.10.05) 코테 풀이 모음(Level 1 1페이지 완료)
19일차(22.10.06) 코테 풀이 모음(Level 1 2페이지 ~)
20일차(22.10.10) 코테 풀이 모음(Level 1 2페이지 ~)

📅 2023년 다시 시작(Java & JavaScript)

SSAFY 사전과제

난이도 1 2 3 4 5 6 언어
사전과제(하) 평균값 구하기 최대수 구하기 중간값 찾기 자릿수 더하기 1대1 가위바위보 Java
사전과제(중) 스도쿠 검증 숫자 배열 회전 두 개의 숫자열 Sum 최빈수 구하기 Java
사전과제(상) 준환이의 양팔저울 보급로 공통조상 최적 경로 미로 2 미로 1 Java
일차 1 2 언어
23년 1일차 최솟값 만들기 JavaScript
23년 2일차 소수 찾기 Java
23년 3일차 공약수 바이러스 Java
23년 4일차 올바른 괄호 JavaScript
23년 5일차 한윤정이 이탈리아에 가서 아이스크림을 사먹는데 Java
23년 6일차 카드 비교하기 2 Four Squares Java
23년 7일차 2 x n 타일링 조합 Java
23년 8일차 이진 변환 반복하기 가장 긴 증가하는 부분 수열 JavaScript, Java
23년 9일차 2×n 타일링 2 연속합 Java
23년 10일차 숫자의 표현 JavaScript
23년 11일차 스티커 점프 Java
23년 12일차 행렬의 곱셈 괄호 제거 JavaScript, Java
23년 13일차 DFS와 BFS Java
23년 14일차 연구소 n^2배열 자르기 JavaScript, Java
23년 15일차 쇠막대기 스택 수열 Java
23년 16일차 생태학 절댓값 힙 Java
23년 17일차 Java
23년 18일차 퇴사 Java
23년 19일차 연속 부분 수열 합의 개수 Ladder1 JavaScript, Java
23년 20일차 스타트와 링크 치킨 배달 Java
23년 21일차 타겟 넘버 인구 이동 Java, JavaScript
23년 22일차 n진수 게임 로봇 청소기 Java, JavaScript
23년 23일차 땅따먹기 감시 Java
23년 24일차 파이프 옮기기 게리멘더링 Java
23년 25일차 이차원 배열과 연산 무선 충전 Java
23년 26일차 방문 길이 JavaScript
23년 27일차 파일명 정렬 JavaScript
23년 28일차 마법사 상어와 비바라기 Java
23년 29일차 경사로 컨베이어 벨트 위의 로봇 Java
23년 29일차(SWEA) 암호코드 스캔 단순 2진암호 코드 Java
23년 30일차 아기 상어 빗물 Java
23년 30일차(SWEA) 최대 상금 균형점 Java
23년 31일차 스타트링크 토마토 Java
23년 31일차(SWEA) 공통조상 최적 경로 Java
23년 32일차 틱택토 A와 B 2 Java
23년 32일차(SWEA) 하나로 보급로 Java
23년 33일차 숫자 고르기 Java
23년 33일차(SWEA) K번째 문자열 GNS Java
23년 34일차 알파벳 Java
23년 35일차 불! 다리를 지나는 트럭 Java, JavaScript
23년 35일차(SWEA) 행렬찾기 금속막대 Java
23년 36일차 숨바꼭질 뒤에 있는 큰 수 찾기 Java, JavaScript
23년 36일차(SWEA) 홈 방범 서비스 보물상자 비밀번호 Java
23년 37일차 문자열 폭발 큰 수 만들기 Java, JavaScript
23년 37일차(SWEA) 프로세서 연결하기 활주로 건설 Java
23년 38일차 숫자 변환하기 Java, JavaScript
23년 39일차 이항 계수2 패션왕 신해빈 Java, JavaScript
23년 39일차 격자상의 경로 다음 순열 Java, JavaScript
23년 40일차 장훈이의 높은 선반 Java
23년 41일차 탑(다시 풀기) Java
23년 42일차 이중 우선순위 큐 네트워크 Java, JavaScript
23년 43일차 나무 자르기 Java
23년 44일차 예산 Java
23년 45일차 숫자 게임 JavaScript
23년 46일차 기지국 설치 베스트 앨범 JavaScript
23년 47일차 디저트 카페 미생물 격리 Java
23년 48일차 구간 합 구하기 4 구간 합 구하기 5 JavaScript
23년 49일차 2차원 배열의 합 JavaScript
23년 50일차 택배 상자 JavaScript
23년 51일차 AC 연속된 부분 수열의 합 JavaScript
23년 52일차 무인도 여행 스티커 모으기 JavaScript
23년 53일차 미로 탐색 JavaScript
23년 54일차 더 맵게 JavaScript
23년 55일차 단지번호붙이기 JavaScript
23년 56일차 주식가격 JavaScript
23년 57일차 외톨이 알파벳 JavaScript
23년 58일차 부등호 JavaScript
23년 59일차 영역 구하기 JavaScript
23년 60일차 주식 JavaScript
23년 61일차 카드 정렬하기 마법의 엘리베이터 JavaScript
23년 62일차 소가 길을 건너간 이유 6 JavaScript
23년 63일차 배열 돌리기 1 안전 영역 JavaScript
23년 64일차 부녀회장이 될테야 JavaScript
23년 65일차 친구 접두사 JavaScript
23년 66일차 대충 만든 자판 JavaScript
23년 67일차 봄버맨 JavaScript
23년 68일차 풍선 터트리기 추월 JavaScript
23년 69일차 선수과목 JavaScript
23년 70일차 파스칼 삼각형 작업 JavaScript
23년 71일차 정수 제곱근 부분수열의 합 JavaScript
23년 72일차 카드 놓기 JavaScript
23년 73일차 N과 M(10) 가장 긴 증가하는 부분 수열 2 JavaScript
23년 74일차 단축키 지정 도영이가 만든 맛있는 음식 JavaScript
23년 74일차 (2) 미로 탈출하기 JavaScript

📅 2024년 시작(Only JavaScript)

일차 1 2 언어
24년 1일차 전화번호 목록 JavaScript
24년 2일차 상어 초등학교 JavaScript
24년 3일차 기차가 어둠을 헤치고 은하수를 JavaScript
24년 4일차 오목 JavaScript
24년 5일차 유성 JavaScript
24년 6일차 빗물(JS로 다시 풀이) JavaScript
24년 7일차 단어 맞추기 JavaScript
24년 8일차 홀수 홀릭 호석 JavaScript
24년 9일차 현수막 JavaScript
24년 10일차 겹치는 건 싫어 JavaScript
24년 11일차 귀여운 라이언 JavaScript
24년 12일차 블로그 JavaScript
24년 13일차 광물 캐기 JavaScript
24년 14일차 표절 JavaScript
24년 15일차 선분 위의 점 JavaScript
24년 16일차 랜선 자르기 JavaScript
24년 17일차 A → B JavaScript
24년 18일차 수들의 합 JavaScript
24년 19일차 신입 사원 JavaScript
24년 20일차 보석 상자 JavaScript
24년 21일차 합 구하기 JavaScript
24년 22일차 주유소 JavaScript
24년 23일차 회의실 배정 JavaScript
24년 24일차 회문 JavaScript
24년 25일차 박스 채우기 JavaScript
24년 26일차 용액 JavaScript
24년 27일차 용액 JavaScript
24년 28일차 예산(JS로 다시 풀이) JavaScript
24년 29일차 나무 자르기(JS로 다시 풀이) JavaScript
24년 30일차 숫자 카드 2 JavaScript
24년 31일차 병사 배치하기 JavaScript
24년 32일차 뒤풀이 JavaScript
24년 33일차 파일 정리 JavaScript
24년 34일차 K번째 수 JavaScript
24년 35일차 쉬운 최단거리 JavaScript
24년 36일차 N-Queen JavaScript
24년 37일차 프린터 큐 JavaScript
24년 38일차 스택 JavaScript
24년 39일차 듣보잡 JavaScript
24년 40일차 연결 요소의 개수 JavaScript
24년 41일차 N과 M(1) (JS로 다시 풀이) JavaScript
24년 42일차 모든 순열 JavaScript
24년 43일차 셀프 넘버 JavaScript
24년 44일차 0 만들기 JavaScript
24년 45일차 비밀번호 찾기 JavaScript
24년 46일차 섬의 개수 JavaScript
24년 47일차 N과 M(2) JavaScript
24년 48일차 N과 M(3) JavaScript
24년 49일차 N과 M(4) JavaScript
24년 50일차 외판원 순회 2 JavaScript
24년 51일차 로또(JS로 다시 풀이) JavaScript
24년 52일차 알파벳 JavaScript
24년 53일차 유기농 배추(다른 방식으로 다시 풀이) JavaScript
24년 54일차 노드사이의 거리 JavaScript
24년 55일차 보물 JavaScript
24년 56일차 트리 베스트셀러 JavaScript
24년 57일차 치킨거리(JS로 다시 풀이) JavaScript
24년 58일차 크로아티아 알파벳 JavaScript
24년 59일차 카드 2 JavaScript
24년 60일차 텀 프로젝트 JavaScript
24년 61일차 농장 관리 JavaScript
24년 62일차 탑(JS로 다시 풀이) JavaScript
24년 63일차 아기 상어(JS로 다시 풀이) JavaScript
24년 64일차 통나무 건너뛰기 JavaScript
24년 65일차 가르침 기차가 어둠을 헤치가 은하수를(re) JavaScript