[프로그래머스] 봉인된 주문
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/389481 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 유형구현 문제 난이도Lev3 문제 분석n 번째에 해당하는 문자열을 출력하는 문제이다. 그러나 조건이 있다.1. 글자 수가 적은 주문부터 먼저 기록된다.2. 글자 수가 같다면 사전 순서대로 기록된다.ex)"a"→"b"→"c"→"d"→"e"→"f"→...→"z"→"aa"→"ab"→...→"az"→"ba"→...→"by"→"bz"→"ca"→...→"zz"→"aaa"→"aab"→...→"aaz"→"aba"→...→"azz"→"baa"→...→"zzz"→..
[고득점 Kit - 그래프] 가장 먼 노드
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 유형다익스트라 문제 난이도Lev 3 문제 분석해당 문제는 전형적인 그래프 유형 중 다익스트라 문제이다. Queue와 dist[] 배열을 사용해서, 노드간의 최단 경로를 찾아주면 되는 기본 문제로 다른 설명은 필요 없을 것 같다. 전체 코드import java.util.*;import java.io.*;class Solution { public int solution(int n, int[][] edge) { int answer = ..
[프로그래머스] 서버 증설 횟수
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/389479 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제유형구현문제 난이도Lev2문제분석- 온라인 게임을 운영중인데, 시간마다 게임 이용자수, 서버 한 대당 가용 가능한 인원, 서버 한 대당 운영 시간이 주어진다.- 기본적으로 서버는 한 대가 실행 중이고, 이용자 수가 많아져 서버가 더 필요한 경우, 서버를 증설하고, 증설한 횟수를 counting해서 결과값을 출력하는 문제이다.- 문제에서 특별히 어려운 점은 없고, 주어진 문제 내용대로 구현을 진행하면 된다. 우선, 난 서버의 운영 가능시간을 확..
[PCCP 기출 3번] 충돌위험 찾기
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/340211 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제유형구현문제 난이도Lev2 문제 분석- x개의 로봇에 대해서 각자 도착해야하는 포인트 지점들이 주어진다.- 모든 로봇은 한 번에 한 칸씩만 움직일 수 있고, 자신이 도착해야하는 포인트들을 모두 거치면 종료된다.- 이때, 로봇끼리 만나는 경우를 충돌 위험 상황이라고 판단하고, 충돌 횟수를 구하는 문제이다. 만약, 같은 시간에 여러 개의 충돌이 일어난다면 모든 충돌을 각각 카운팅한다.- 최단 경로가 여러 개 존재할 경우, X좌표를 먼저 움직이는 ..
[PCCP 기출 2번] 퍼즐 게임 챌린지
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/340212 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 난이도 - Lev2 문제 유형- 이진 탐색(binary Search)- 구현 문제 분석퍼즐의 난이도와 소요시간이 주어진다.만약 나의 숙련도보다 퍼즐의 난이도가 같거나 낮다면, 퍼즐의 소요 시간만큼 퍼즐을 푸는데 소요된다.만약 나의 숙련도보다 퍼즐의 난이도가 높다면틀린 횟수 = 나의 숙련도- 퍼즐의 난이도전체 소요 시간 = + 틀린 횟수 * (현재 퍼즐을 푸는데 걸린 시간 + 이전 퍼즐의 문제 풀이 시간) + 현재 퍼즐을 푸는데 걸린 시간만약..