Java 28

[Baekjoon] 1021번 회전하는 큐 (Java)

https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net 회전하는 큐 문제 Java로 풀이하겠습니다. 이 문제는 큐에서 원소를 뽑아내는 연산을 최소화하기 위해 어떻게 큐의 상태를 조작해야 하는지를 찾는 문제로 보입니다. 다음과 같은 알고리즘으로 문제를 해결할 수 있습니다. 큐의 첫 번째 원소를 뽑아내는 연산을 수행합니다. 원하는 위치에 도달할 때까지 큐를 왼쪽으로 이동하며 연산을 수행합니다. 이때, 왼쪽 이동 연산 횟수가 원하는 위치에 도달하기 위한..

[Baekjoon] 1026번 보물 (Java)

https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 보물이라는 문제 자바로 풀이하겠습니다. 주어진 문제는 두 배열 A와 B를 이용하여 S를 정의하고, S의 값을 최소로 만들기 위해 A배열의 순서를 재배열하는 것입니다. N의 크기가 비교적 작기 때문에 간단한 정렬 알고리즘을 사용하여 해결할 수 있습니다. 다음과 같이 풀이하였습니다. import java.io.BufferedReader; import java.io.IOException; imp..

[Programmers] Level.1 달리기 경주(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 달리기 경주라는 문제 Java로 문제 풀이하겠습니다. 이 문제는 해설자가 특정 선수를 불렀을 때 해당 선수가 앞으로 이동하여 추월하는 상황을 다루고 있습니다. 저는 다음과 같이 풀이하였습니다. import java.util.Map; import java.util.HashMap; class Solution { public String[] solution(String[] players, String..

[Programmers] Level.1 삼총사(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/131705?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 삼총사라는 문제 Java로 풀이하겠습니다. 이 문제를 해결할 수 있는 가장 간단한 방법은 모든 가능한 경우를 탐색하면서 조건이 충족하는지 확인하는 것입니다. 저는 다음과 같이 풀이하였습니다. class Solution { int count = 0; public int solution(int[] number) { int count = 0; for (int i = 0; i ..

[Programmers] Level.1 가운데 글자 가져오기(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/12903 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 가운데 글자 가져오기 문제를 Java로 풀이하겠습니다. 이 문제는 주어진 단어 s의 문자열의 길이가 짝수인 경우와 홀수인 경우에 따라 가운데 글자를 반환하는 문제입니다. 다음과 같이 문제 풀이하였습니다. class Solution { public String solution(String s) { if(s.length()%2==0){ return s.substring(s.length()/2-1,s...

[Programmers] Level.1 최소 직사각형(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 최소 직사각형 이라는 문제 Java로 풀이하겠습니다. 주어진 명함의 가로 길이와 세로 길이를 기반으로 가장 작은 지갑의 크기를 계산하는 문제입니다. 다음과 같이 문제 풀이하였습니다. import java.util.Queue; import java.util.PriorityQueue; class Solution { public int solution(int[][] sizes) { Queue width..

[Programmers] Level.1 2016년(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/12901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2016년 문제 Java로 풀이하겠습니다. 이 문제는 2016년 특정 날짜가 무슨 요일인지 찾는 것입니다. 저는 다음과 같이 문제 풀이 하였습니다. class Solution { public String solution(int a, int b) { String[] week = {"SUN","MON","TUE","WED","THU","FRI","SAT"}; int sum = 0; for(int i=..

[Programmers] Level.1 크기가 작은 부분 문자열(Java)

https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 크기가 작은 부분 문자열 문제 Java로 문제 풀이하겠습니다. 이 문제는 주어진 문자열 t에서 길이가 p와 같은 모든 부분 문자열을 추출하여 각 문자열이 'p'와 비교되어 작거나 같은지 확인해야 합니다. 저는 다음과 같이 문제를 풀이하였습니다. class Solution { public int solution(String t, String p) { int tLen = t.length(); int..