본문 바로가기

java32

합승 택시 요금 - JAVA, 다익스트라 알고리즘(Dijkstra Algorithm) https://school.programmers.co.kr/learn/courses/30/lessons/72413 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   풀이 - 나의 생각전형적인 다익스트라 알고리즘에다가 비교연산 한 번이 추가 된 문제입니다. 무지와 어파치가 각자의 목적지 'A' 와 'B'에 최소한의 비용으로 가는 방법을 알기 위해서는 결국에 모든 목적지에 최소한의 비용으로 가는 방법을 알아야합니다. 그렇기에 int[] distFromStart = dijkstra(graph, n, s);int[] distFromA = dijkstra(graph,.. 2024. 5. 25.
문자열 내 p와 y의 개수 - JAVA https://school.programmers.co.kr/learn/courses/30/lessons/12916?language=java 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이 - 나의 생각String 함수 중 replaceAll을 활용하면 아주 쉽게 해결됩니다. 저 같은 경우 toLowerCase()를 사용했지만 replaceAll("[P,p,Y,y]","") 를 사용하면 P, p, Y, y가 모두 삭제되고 replaceAll("[^P,p,Y,y]","") 를 사용하면 P, p, Y, y를 제외한 문자를 모두 삭제합니다. 아무튼 저는 다 소.. 2024. 5. 23.
코딩테스트 연습 > 푸드 파이트 대회 - JAVA (문자열 뒤집기) https://school.programmers.co.kr/learn/courses/30/lessons/134240 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 - 나의 생각 StringBuilder에 반절분을 저장한 후 "0" 추가 후 기존에 저장된 음식을 뒤집은 걸 append 해주면 됩니다. String의 경우 reverse 함수가 없지만 StringBuilder에는 reverse 함수가 있기에 이를 활용해 봤습니다. Stirng으로 하실경우 반복문으로 문자열의 뒤에서부터 하나씩 저장해가면 reverse된 문자열을 구하실 수 있습니다. 코드 .. 2024. 2. 24.
코딩테스트 연습 > 같은 숫자는 싫어 - JAVA (STACK) https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 - 나의 생각 별건 없고 Stack의 맨 위의 숫자가 현재 검사하는 숫자와 같으면 pass 다르다면 Stack에 넣어주면 끝입니다. 코드 import java.util.*; public class Solution { public int[] solution(int []arr) { Stack stack = new Stack(); stack.add(arr[0]); for(int num : arr).. 2024. 2. 24.
코딩테스트 연습 > 다리를 지나는 트럭 - JAVA (Queue) https://school.programmers.co.kr/learn/courses/30/lessons/42583 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 - 나의 생각 큐를 트럭과 다리를 담당하도록 2개를 선언했다. 1. Truck Queue 우선 Queue에 truck을 다 집어 넣는다. 2. Bridge Queue 우선 Queue에 다리 길이 만큼 0을 다 집어 넣는다. 이때 0은 truck이 올라가 있지 않다는 것을 의미한다. 3. 반복문 돌리기 while문으로 Bridge Queue가 비어 있지 않는 경우 반복문을 돌린다. 다리에 올라.. 2024. 2. 4.
코딩테스트 연습 > 택배상자 - JAVA https://school.programmers.co.kr/learn/courses/30/lessons/131704# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 - 나의 생각 원래 레일에는 1번 택배부터 n번 택배까지 순서대로 올라와 있다. 하지만 목적지에 따라 기사가 원하는 순서대로 바꾸기위해서 보조 컨테이너 벨트를(이하 보조 벨트) 사용할 수 있다. 이 보조 벨트에서 짐을 내리는 순서는 올려놓은 순서의 역순으로만 내릴 수 있다. 즉, 4번을 먼저 싣기위해 1, 2, 3 번을 보조 벨트에 올리면 3, 2, 1 순으로 꺼낼 수 있다. 이건 뭐다?.. 2024. 1. 21.