썸네일 [자료구조 활용] 최대 길이 연속 수열 [문제] [정답 코드] // 최대 길이 연속 수열 import java.util.*; class Solution6 { public int solution(int[] nums){ int answer = 0; // set은 중복 원소를 제거 해주므로 배열 값 set에 담기 HashSet set = new HashSet(); for(int x : nums) set.add(x); // set 탐색하면서 for(int x : set) { // 연속 수열의 시작되는 값인지 확인. 중간 값은 볼 필요가 없기 때문 if(set.contains(x - 1)) continue; int cnt = 0; // 연속적으로 1 증가한 숫자가 있는 지 보고 있으면 cnt 증가 while(set.contains(x)){ cnt++;..
썸네일 [시뮬레이션 & 구현] 좌석번호 [문제] [내가 푼 것] import java.util.*; class Solution4 { public int[] solution(int c, int r, int k){ int[] answer = new int[2]; int[][] seat = {}; // 배열 초기화 for(int i = 0; i < c; i++) { for(int j = 0; j < r; j++) { seat[i][j] = 0; } } // 이동방향 정하는 배열 int dx[] = {-1, 0, 1, 0}; int dy[] = {0, 1, 0, -1}; int d = 1; int x = 0, y = 0; int count = 0; while(count < k) { count++; int nx = 0, ny = 0; nx = x + ..
썸네일 [시뮬레이션 & 구현] 잃어버린 강아지 [문제] [처음 푼 것] import java.util.*; class Solution3 { public int solution(int[][] board){ int answer = 0; int count = 0; // 이동방향을 정하기 위한 배열 (12시, 3시, 6시, 9시 방향) int[] dx = {-1, 0, 1, 0}; int[] dy = {0, 1, 0, -1}; // 배열 인덱스 int d1 = 0; int d2 = 0; // 현수와 강아지 초기 위치 변수 int x1 = 0, y1 = 0, x2 = 0, y2 = 0; // 현수와 강아지 위치 초기화 for(int[] line : board) { for(int k : line) { if(line[k] == 2) { x1 = k; } if(k..
썸네일 [시뮬레이션 & 구현] 청소 [문제] [처음 생각한 것] import java.util.*; class Solution { public int[] solution(int[][] board, int k){ int[] answer = new int[2]; for(int i = 0 ; i < k ; i++) { for(int[] line : board) { for(int k : line) { if(answer[i] == 1 || answer[i] == board.length) { } } } } return answer; } public static void main(String[] args){ Solution T = new Solution(); int[][] arr1 = {{0, 0, 0, 0, 0}, {0, 1, 1, 0, 0}, {0..
썸네일 [시뮬레이션 & 구현] 사다리 타기 [문제] 코딩테스트를 처음 공부하는 거라 감이 잘 오지 않았다. [내가 작성해 본 코드] package ch01; import java.util.*; class Solution { public char[] solution(int n, int[][] ladder){ char[] answer = new char[n]; char num = 65; for(int i = 0; i < n; i++) { answer[i] = num; num++; } for(int i = 0; i < ladder.length; i++) { for(int j = 0; j < ladder[i].length; j++) { } } return answer; } public static void main(String[] args){ Solut..
문자열 조작 # 1 학교에서 하는 여름방학 코딩테스트 특강을 듣기로 하였다. 처음 준비해 보는 거라 걱정이 되지만 부족한 부분이 아주 많기 때문에 기회가 있다면 모든 것을 도전해 보기로 했다!복습을 열심히 하자 화이팅 1. 문자열 압축 알파벳 대문자로 이루어진 문자열을 입력받아 같은 문자가 연속으로 반복되는 경우 반복되는 문자 바로 오른쪽에 반복 횟수를 표기하는 방법으로 문자열을 압축하는 프로그램을 작성하세 요. 단 반복횟수가 1인 경우 생략합니다. 입출력 예 : s result "KKHSSSSSSSE" "K2HS7E" "AAABCCCDD" A2BC3D2" import java.util.*; class Main { public String solution(String s){ String answer=""; s = s+" "..