문제를 제출했을 때 런타임 에러가 나면 정확히 무슨 이유인지 명시해주지 않기 때문에 알아서 고쳐야 한다. -> 이제는 런타임 에러의 종류를 명시해준다! 여러 가지 이유 1. 배열 인덱스 범위를 벗어났을 경우 ->주어진 테스트 케이스와 달리 채점 케이스는 큰 인덱스를 포함한다. 충분한 배열 크기를 잡아줬는지를 확인해야 한다. -> 내가 1부터 시작하진 않았는지 어디서 조건을 잘못 걸었다던지를 봐야 한다. 2. 0으로 나눌 때 3. 사용하는 라이브러리에서 예외를 발생시켰을 때 4. 재귀 호출이 너무 깊어질 때 => 런타임 에러라는 것은 uncheckedException을 비롯한 문제일 경우가 있으므로 살펴보는 것이 좋다 +추가로 설마 없겠지만 가끔 있는 IDE에서 사용했던 package를 지우지 않는 경우...
문제보러가기 코딩테스트 연습 - 기둥과 보 설치 5 [[1,0,0,1],[1,1,1,1],[2,1,0,1],[2,2,1,1],[5,0,0,1],[5,1,0,1],[4,2,1,1],[3,2,1,1]] [[1,0,0],[1,1,1],[2,1,0],[2,2,1],[3,2,1],[4,2,1],[5,0,0],[5,1,0]] 5 [[0,0,0,1],[2,0,0,1],[4,0,0,1],[0,1,1,1],[1,1,1,1],[2,1,1,1],[3,1,1,1],[2,0,0,0],[1,1,1,0],[2,2,0,1]] [[ programmers.co.kr 이 문제는 주어진 룰에 맞게 구현을 할 수 있는가를 보는 문제였다. 단순 구현이라기에는 설치할 때와 삭제할 때 가능한지를 체크해야 하므로 좀 까다로웠다. 나의 경우에는 삭제..
문제보러가기 16928번: 뱀과 사다리 게임 첫째 줄에 게임판에 있는 사다리의 수 N(1 ≤ N ≤ 15)과 뱀의 수 M(1 ≤ M ≤ 15)이 주어진다. 둘째 줄부터 N개의 줄에는 사다리의 정보를 의미하는 x, y (x < y)가 주어진다. x번 칸에 도착하면, y번 칸으 www.acmicpc.net 이문제는 탐색 문제로 bfs를 이용해 풀었다. 100까지 갈 때 최소한의 주사위를 던져서 가는 것이므로 bfs라고 분류한 것을 보지 않아도 bfs임을 유추할 수 있다. 일반 bfs와 다르게 동서남북 방향이 아닌 1~6까지의 숫자로 이동하는 부분만 잘 처리해주면 문제없이 풀 수 있다. +참고로 메모리 초과가 뜬다면 visited [][]로 체크해주는 부분이 빠졌는지 확인해보자..!! 사실 내가 메모리 초과가..

문제보러가기 16939번: 2×2×2 큐브 첫째 줄에 2×2×2 루빅스 큐브 각 면의 각 칸 색상이 주어진다. 색상은 1부터 6까지의 자연수로 나타내며, 각 자연수는 총 4번 등장한다. i번째 수가 의미하는 칸은 아래와 같다. www.acmicpc.net 이문제는 2차원 배열을 만들어 문제에서 제시한 대로 큐브 한 면에 해당하는 인덱스들을 90도씩 회전시킬 수 있느냐를 묻는 문제였다. 참.. 어려웠다.. 거의 막일로 푼 문제긴 한데.. 비슷한 코드는 묶어서 쓰기도 했다. 문제풀이 -문제에서 주어진 전개도 그대로 2차원 배열을 만들어 저장한다. -문제에서는 큐브를 단 한 번만 회전할 경우만을 요구하고 있으므로 -회전은 총 12가지 경우가 있다 큐브의 앞면 큐브의 뒷면 큐브의 윗면 큐브의 아랫면 큐브의 왼쪽..

문제보러가기 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr 이문제는... 어려웠다. 문제 자체는 이해하기에 어렵지 않았지만 단순 시물레이션이라기엔 배열에 대한 인덱스 지식과 더불어 깊은 복사 얕은 복사에 대한 지식을 갖고 있어야 가능한 문제였다고 생각한다. 이문제를 풀면서,, 2차원 배열에 대해 다시 한번 생각하게 되었다. 패딩 시킨다면 얼마큼...? 어디까지 가야 하지..? 인덱스 몇까지..? 뭐 이런 고민들을 하면서 많이 접해보고 다양한 시각으로 여러 문제들을 풀어봐야겠다고 생각했다!! 문제풀이 -문제의 핵심은 key, lock을 패딩 시키는 것이다. ..
문제보러가기 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감�� www.acmicpc.net 이문제는 시뮬레이션과 dfs를 합쳐서 구현을 하였다. 문제 자체는 심플한데 구현하기는 꽤 까다로운 문제였던 것 같다. 문제풀이 -주어진 배열에서 CCTV일 경우 해당 인덱스와 CCTV번호를 Camera객체로 만들어서 list에 저장한다. -list에 담긴 Camera객체를 하나씩 확인하며 가능한 방향에 대한 모든 map상태를 체크한다. -가능한 방향이라면 monitor함수를 통해 map상태를 갱신하며 list에 담긴 다음 Camera객체..

문제보러가기 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr 이문제는 DP의 개념과 배열로 삼각형을 접근하는 방법만 알면 어렵지않게 풀 수 있는 문제였던것 같다. 문제풀이 -DP배열에 이전까지와 현재 값을 더한것중 큰것을 넣는다. -위의 그림처럼 배열이 생성되고 따라서 빨간 화살표부분이 DP[i][j]이면 DP[i-1][j-1],DP[i-1][j]에서 내려올 수 있는 것이다. -따라서 DP[i][j] =Math.max(dp[i-1][j-1], dp[i-1][j])+triangle[i][j] 가 된다. -여기서 고민해 봐야할 것은 삼각형 면들에 있는 즉 j==0일때와 j==i일때의 경우..
문제보러가기 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 �� programmers.co.kr 이문제는 해시와 정렬을 이용해 풀 수 있는 문제였다. 깔끔하게 풀고 싶었으나 답이 나오게 문제를 풀기만 한 것 같다...ㅎ 문제풀이 -장르별로 어떤 노래가 있는지 구분하기 위해 Map을 이용해 저장해준다. -각 장르 안에서 노래들은 재생 횟수가 높은 순, 같은 재생 횟수일 경우 고유번호(인덱스가 사용됨)가 낮은 순으로 저장할 수 있도록 PriorityQueue를 사용하고 정렬 기준을 정해주기 위해 compareTo함수를 구현해 준다. -장르별..
- Total
- Today
- Yesterday
- programers
- 최소 스패닝 트리
- Oracle
- Baekjoon
- 코딩테스트
- 운영체제
- JavaScript
- Stomp
- 채팅
- dfs
- 삼성 sw역량테스트
- 분리 집합
- 자바
- DP
- MST
- git
- Spring
- 삼성 sw역량 테스트
- 백준
- BFS
- 정렬
- java
- sockjs
- OS
- websocket
- 알고리즘
- 프로그래머스
- 완전탐색
- Heap
- SWEA
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |