구현
[JAVA] Programmers : 문자열 나누기
문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결방법 조건에 맞게 문자열을 분리하고 분리된 횟수를 찾는 문제 처음 읽은 글자와 다른 글자의 수가 서로 일치될 때 분리를 해야한다. 예를 들어 "aaabbaccccabba" 의 경우 a가 기준이 되어서 aaabbacc 일때 a의 개수가 4개이고 a를 제외한 bbcc가 4개여서 이 타이밍에 분리가 된다. 즉 기준 문자와 다른 문자 수가 일치가 되지않으면 계속 분리하지않고 진행이 된다. 아까 위의 예시로 추가적으로 설명을 작성하면 aaabb인 상태에서는 a의 개수가 3개이고 a를 제외한 bb는 2개여서 분..
![[JAVA] 코드트리 : 2개의 사탕](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEXz4w%2FbtrNwDqQw3I%2FEWHP9Nl8nkhmYqv91jQ9Xk%2Fimg.jpg)
[JAVA] 코드트리 : 2개의 사탕
문제 코드트리 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 문제가 보이지 않으면 https://www.codetree.ai/frequent-problems 여기서 찾아볼 수 있다. 이번 문제는 따로 코드를 모듈화 하지 않고 일자로 나열해서 작성해서 가독성이 매우 좋지 않지만 코드 트리에서 자바 풀이를 따로 제공하지 않아 도움이 될까 하여 업로드한다. 해결방법 옛날에 필통으로 하던 구슬 미로 찾기 게임이 생각나는 문제였다. 구슬 대신 사탕을 기울여서 EXIT라고 적힌 밖으로 빨간색 사탕만 빼내야하는데 밖으로 빼내기 위한 최소 횟수를 찾는 문제이다. 전형적인 시뮬레이션 문제라고 할 수 있는데 시뮬레이..
[JAVA] 백준 2636 : 치즈
문제 2636번: 치즈 첫째 줄에는 사각형 모양 판의 세로와 가로의 길이가 양의 정수로 주어진다. 세로와 가로의 길이는 최대 100이다. 판의 각 가로줄의 모양이 윗 줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진 www.acmicpc.net 해결 방법 조금 생각할 것이 있는 구현 문제이다. 필자는 다음과 같은 순서로 문제를 해결했는데, 1. 배열의 (0, 0) 부터 빈 공간인 0을 탐색, 만약 0의 상하좌우에 치즈 즉, 1이 있다면 Queue에 넣음. 모든 공간을 다 탐색하면 Queue에 넣어진 치즈들이 한 시간 후 녹을 치즈들이 됨. 재귀를 통해서 모든 치즈들이 없어질 때까지 탐색을 계속함. 2. Queue에서 치즈를 꺼내면서 빈공간으로 바꿔주면서 상하좌우에 있는 치즈를 찾음. 만약 치즈가 있다면 다..
![[JAVA] 행렬 테두리 회전하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZpEKT%2Fbtq3XsmUBT3%2FLBJ1KfBfDnW5Fnw2k9Rs81%2Fimg.png)
[JAVA] 행렬 테두리 회전하기
문제 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr 해결 방법 어려운 문제인가 했는데, 글에 적힌대로 구현하니 작동이 되었다. 그래서 구현은 문제에서 제시한 가로, 세로 크기만큼 배열을 생성한 뒤에 숫자를 입력해주고, 그림의 1, 2, 3, 4번 순서대로 회전하게끔 반복문을 통해 구현했다. 그리고 최솟값을 찾을 수 있게 min 변수를 게속 체크하면서 확인하였다. 1번은 y값을 증가시켜 y2와 일치하면 멈춰주고, 2번은 x값을 증가시켜 x2와 일치하면 멈춰주었다. 3번은 y값을 감소시켜 y1..
[JAVA] 백준 8972 : 미친 아두이노
문제 8972번: 미친 아두이노 요즘 종수는 아두이노를 이용해 "Robots"이라는 게임을 만들었다. 종수는 아두이노 한대를 조정하며, 미친 아두이노를 피해다녀야 한다. 미친 아두이노는 종수의 아두이노를 향해 점점 다가온다. www.acmicpc.net 해결 방법 다 풀고 나서 보니 BFS 방법을 이용해서 푸신 분들도 있었다. 그 분들에 비하면 내 코드가 속도가 느리긴 하지만, 이런 코드도 있다 정도로 봐주면 좋겠다. 문제의 1~5번을 순서대로 구현했고, 방향은 dx, dy 배열을 통해 입력해두었다. 입력의 젤 마지막에 종수가 움직이는 방향이 주어지는데, 주어질 때마다 moveI 함수를 실행시켜 전체 맵을 변경시켜주었다. moveI 함수는 처음에 입력받은 값에 따라 종수 아두이노를 움직이고, 종수 아두이..