my study.

java 54

[프로그래머스] 롤케이크 자르기, java

- 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이import java.util.*;class Solution { public int solution(int[] topping) { int answer = 0; //왼쪽, 오른쪽에 있는 각각 같은 토핑의 개수를 세어놓기 위한 left right 배열을 선언합니다. //존재할 수 있는 topping 원소의 최대값이 10000이라 10001으로 선언하였습니다. int[] left = new int[10001]; int[] right = new int[10001]; ..

[프로그래머스] 타겟 넘버, java

- 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이class Solution { //static으로 사용하면 편할 것으로 생각된 값들을 //선언하여줍니다. static int result, len, tg; static int[] nums; public int solution(int[] numbers, int target) { //static에 해당하는 변수들을 채워 전역적으로 사용하도록 만듭니다. result = 0; nums = numbers; tg = target; len = numbe..

[프로그래머스] 프로세스, java

- 문제  프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이import java.util.*;class Solution { //일일이 location 프로세스의 위치를 찾기 힘드므로 //내가 찾아야 하는 프로세스에 표시를 해놓고 queue를 돌려 //쉽게 확인하기 위한 Node 클래스 static class Node{ int num; boolean get; public Node(int num, boolean get){ this.num = num; this.get = get; ..

[프로그래머스] 전화번호 목록, java

- 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이import java.util.Arrays;class Solution { public boolean solution(String[] phone_book) { //전화번호부를 정렬합니다. Arrays.sort(phone_book); //이렇게 할 경우 아래와 같이 숫자의 오름차순, 길이의 오름차순으로 정렬 되는 것을 확인할 수 있다. //따라서 인접한 부분의 숫자끼리의 접두사 체크만을 진행해도 답의 여부를 확인할 수 있습니다. //테스트 1> [119, 11..

[프로그래머스] 피로도, java

- 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이//오랜만에 풀어 본 완전탐색 문제입니다.//이번 문제는 DFS(깊이우선 탐색)를 이용하는 문제였습니다.class Solution { //전역적으로 이용할 법한 변수와 데이터를 static으로 선언하여 주었습니다. static int len; static int result; static int[][] dg; public int solution(int k, int[][] dungeons) { //static으로 선언된 변수들을 채워줍니다. result = 0; ..

[프로그래머스] 기능개발, java

- 문제 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr- 풀이import java.util.*;class Solution { public ArrayList solution(int[] progresses, int[] speeds) { //현재 가장 앞에 있는 작업의 인덱스입니다. int idx = 0; //작업의 수를 미리 받아, 작업의 완료를 판단하기 위해 사용합니다. int size = progresses.length; //정답 배열의 개수를 확신할 수 없기에 ArrayList를 이용해 편하게 입력받았습니..

[백준] 1145 적어도 대부분의 배수, java

주석을 통해 설명을 적어두었습니다.public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); //다섯개의 수만 주어지기 때문에 5의 크기를 가지는 배열을 선언합니다. int[] nums = new int[5]; //nums 배열에 입력받은 수를 넣어줍니다. for (int i = 0; i =3){ result = start; break; //세 개 이상 나누어 떨어지는 수가 없다면, start를 증가시키고 ..

[프로그래머스] 멀리 뛰기, java

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이목적지에 갈 수 있는 방법의 수에 규칙이 있을 것이라 생각이 되어 규칙을 찾아보기로 했습니다.// 거리 1일 때 방법 1개1// 거리 2일 때 방법 2개1 12// 거리 3일 때 방법 3개1 1 12 11 2// 거리 4일 때 방법 5개1 1 1 12 1 11 2 11 1 22 2// 거리 5일 때 방법 8개1 1 1 1 12 1 1 11 2 1 11 1 2 11 1 1 22 2 12 1 21 2 2// 거리 6일 때 방법 13개1 1 1 1 1 12 1 1 1 11 2 1 1 11 1 2 1 11 1 1 2 11 1 1 1 22 2 1 12 1 2 1..

[백준] 23971 ZOAC4, java

https://www.acmicpc.net/problem/23971문제 이해문제는 이해하기 어렵지 않았습니다. 처음 주어지는 H, W에 사람들이 앉을 수 있는 강의실 크기를 지정하고, 사람들이 앉을 수 있는 틈을 각각 N, M으로 주어졌습니다. 잠깐 생각해보니 간단한 계산을 통해 문제를 해결할 수 있었습니다.풀이 코드public class Main_BJ_23971_B3_ZOAC4 { public static void main(String[] args) throws Exception{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readL..

[백준] 2933 미네랄, java

https://www.acmicpc.net/problem/2933 문제 이해문제 설명은 다음과 같습니다. 간단하게 정리해 보겠습니다. 1. '.'과 'x'로 이루어진 map을 줍니다.2. N 횟수만큼 막대를 좌, 우에서 한 번씩 던져 x를 제거합니다.3. x가 제거될 때, 상하좌우에 인접한 미네랄이 끊어질 경우, 중력이 작용하여 미네랄 덩어리는 바닥으로 떨어집니다.4. 막대를 모두 던진 후 map의 모습을 출력합니다. 다음은 문제에 접근한 방법을 서술해 보겠습니다. 처음에는 잘못된 방법으로 문제를 풀고 있었으며, 다행히 이를 바로잡기 쉽게 문제를 접근하고 있었습니다. 덕분에 문제점을 발견하고 빠르게 정정하여 문제를 풀어낼 수 있었습니다. 첫 번째 풀이1. 먼저 미네랄의 개수를 모두 세주었습니다.2. 이후..