본문 바로가기

알고리즘19

자바 - 프로그래머스 / 달리기 경주 https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr LV 1 구현 방법 처음 : 이중 포문으로 원하는 값 찾아서 위치 바꾸기 하지만, 3 ≤ players[i]의 길이 ≤ 10 2 ≤ callings의 길이 ≤ 1,000,000 으로 이중 포문 돌리니까 런타임 에러 뜸 나중 : players 배열을 해시맵으로 바꿔서 원하는 값 찾을때 O(1)로 바꿔서 구현 주의점은 랭킹 바꿀때 players 배열만 업데이트 하는게 아니라 해시맵 정보도 업데이트 .. 2023. 4. 17.
자바 - 백준 20055 / 컨베이어 벨트 위의 로봇 https://www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 골드5 구현 방법 구현 문제라서 문제에 적힌대로 코드 작성하면 된다. 딱히 사용한 자료구조나 알고리즘도 없다. 2 ≤ N ≤ 100 1 ≤ K ≤ 2N 1 ≤ Ai ≤ 1,000 조건도 위와 같아서 O(n^2)도 충분히 가능하다. 주의할 점은 로봇 위치 이동에 따라 로봇 올리는 곳과 로봇 내리는 곳 신경써서 구현해야 한다. 코드 package boj; import java.i.. 2023. 4. 13.
자바 - 백준 12101 / 1, 2, 3 더하기 2 https://www.acmicpc.net/problem/12101 12101번: 1, 2, 3 더하기 2 n을 1, 2, 3의 합으로 나타내는 방법 중에서 사전 순으로 k번째에 오는 것을 출력한다. k번째 오는 식이 없는 경우에는 -1을 출력한다. www.acmicpc.net 실버1 구현 방법 n은 양수이며 11보다 작고, k는 2^31-1보다 작거나 같은 자연수라서 이중 포문 써도 된다. 1. n까지 가지는 총 갯수를 저장하는 배열 만들기 2. 2차원 dp를 만들어서 숫자별로 합을 나타낼 수 있는 경우들 배열에 저장하기 3. bottom-up 방식의 점화식을 이용해서 원하는 값까지 저장하기 4. 사전순으로 정렬하기 코드 import java.io.BufferedReader; import java.io.. 2023. 4. 10.