[프로그래머스] 미로 탈출 명령어
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력n: Int = 세로 길이m: Int = 가로 길이x: Int = 초기 세로 위치y: Int = 초기 가로 위치 r: Int = 도착 세로 위치c: Int = 도착 가로 위치 k: Int = 제한결과이동거리가 k일 때 사전순으로 가장 빠른 방법을 출력 l = 왼 r = 오d = 아래u = 위만약 방법이 없다면 impossible 문자열 출력해석1. 움직임에 대한 문자가 매칭되야하므로 열거형으로 하면 편할 것 같다.2. 사전으로 가장 빠른 움직인 순서는 d l r u 순이니 이 순서로 방문을 하면 알아서 사..
[프로그래머스] 코딩 테스트 공부
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력alp:Int = 최초 알고력 cop:Int = 최초 코딩력problems:[[Int]] = problem의 배열 , 길이는 ≤ 6. problem = [alp_req, cop_req, alp_rwd, cop_rwd, cost]alp_req는 문제를 푸는데 필요한 알고력입니다.0 ≤ alp_req ≤ 150cop_req는 문제를 푸는데 필요한 코딩력입니다.0 ≤ cop_req ≤ 150alp_rwd는 문제를 풀었을 때 증가하는 알고력입니다.0 ≤ alp_rwd ≤ 30cop_rwd는 문제를 풀었을 때 ..
[프로그래머스] 파괴되지 않은 건물
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력board: [[Int]] = r행 c열의 내구도1 ≤ board의 행의 길이 (= N) ≤ 1,0001 ≤ board의 열의 길이 (= M) ≤ 1,0001 ≤ board의 원소 (각 건물의 내구도) ≤ 1,000skill =[type, r1, c1, r2, c2, degree]1 ≤ skill의 행의 길이 ≤ 250,000skill의 열의 길이 = 6type은 1 혹은 2입니다.type이 1일 경우는 적의 공격을 의미합니다. 건물의 내구도를 낮춥니다.type이 2일 경우는 아군의 회복 스킬을 의미합니다..
[프로그래머스] 양과 늑대
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력info:[Int] = i번째 자리에 0이면 양, 1이면 늑대를 나타내는 정보 배열2 ≤ info의 길이 ≤ 17_ edges:[[Int]] = [[부모 노드, 자식노드],...] 로 간선에 연결된 부모자식 노드의 정보를 담고 있다. 2 ≤ info의 길이 ≤ 17출력result = 담을 수 있는 최대 양의 마리 수양 ≤ 늑대 마리 수가되면 지금까지 담은 양은 모두 잡아 먹힌다.해석1. 제약 조건은 간단하게 양의 수가 많을 때만 다음 늑대로 갈 수 있다.2. 또한 들어오는 순서에 따라 이전에 방문할 수 없..
[프로그래머스] 광고 삽입
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력모든 시간 형태 = "HH:MM:SS"play_time: String = 종료 시간 (총 재생 시간)adv_time: String = 광고 시간logs: [String] = [startTime-endTime, ....] // 각 유저 별 시청 구간 (1 결과result: String = "HH:MM:SS"가장 많은 유저가 보는 시간 중 광고 삽입될 시간단 조건을 만족하는 구간이 여러 군대면 시작시간이 가장 빠른 시간으로 한다.해석이 문제는 솔직히 카데고리 분류를 끝내하지 못했고 힌트를 조금 보면서 풀었다...
[프로그래머스] 합승 택시 요금
·
PS/프로그래머스
문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr입력n:Int = 지점 개수 1 d지점 편도 택시 비용 결과ans = a와 b가 s에서 출발해서 각자 도착지점까지 갔을 때 최소 택시 비용해석지점이 많지않고 몇개의 지점을 거치더라도 최소 비용으로 가기만하면 되기때문에플로이드 와샬 알고리즘으로 접근해보자. 플로이드 와샬의 단계는 다음과 같다. 1. adj 인접배열 초기화자기 자신에게는 항상 최소이므로 0나머지는 INF로 초기화한다.2. 모든 지점간 최소비용으로 adj 배열을 갱신한다. 이 때 dp를 이용하며 점화식은 다음과 같다.adj[i][j] =  i에서..