[알고리즘 문제풀이] 프로그래머스 - 사라지는 발판 / JAVA(자바)
https://programmers.co.kr/learn/courses/30/lessons/92345 코딩테스트 연습 - 사라지는 발판 [[1, 1, 1], [1, 1, 1], [1, 1, 1]] [1, 0] [1, 2] 5 [[1, 1, 1], [1, 0, 1], [1, 1, 1]] [1, 0] [1, 2] 4 programmers.co.kr /** 1. dfs 완탐 2. A턴과 B턴을 구분 3. 본인 턴에서 움직인 후 그 정보를 상대턴으로 넘기기 4. 상대턴에서 이기거나 지거나 했을 경우 승패정보 + 움직인수 반환 5. 상대턴에서 졌으면, 본인턴은 이기는경우 6. 이기는경우엔 최소한으로 이길 수 있는 값 반환 7. 질경우엔 최대한으로 끌어서 지는 값 반환 **/ class Solution { publ..
2022. 1. 30.
[알고리즘 문제풀이] 프로그래머스 - 파괴되지 않은 건물 / JAVA(자바)
https://programmers.co.kr/learn/courses/30/lessons/92344 코딩테스트 연습 - 파괴되지 않은 건물 [[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5]] [[1,0,0,3,4,4],[1,2,0,2,3,2],[2,1,0,3,1,2],[1,0,1,3,3,1]] 10 [[1,2,3],[4,5,6],[7,8,9]] [[1,1,1,2,2,4],[1,0,0,1,1,2],[2,2,0,2,0,100]] 6 programmers.co.kr /** 누적합 개념 적용 1. 해당 스킬이 들어올때, 범위 시작부에 더해놓고, 범위 끝+1 범위에 빼두기 2. 누적합 배열 돌면서, 해당 앞의 값을 더해가기( 누적된 증감 값을 담아두기) 3. 해당 누적값 적..
2022. 1. 30.
[알고리즘 문제풀이] 프로그래머스 - 양과 늑대 /JAVA(자바)
https://programmers.co.kr/learn/courses/30/lessons/92343 코딩테스트 연습 - 양과 늑대 [0,0,1,1,1,0,1,0,1,0,1,1] [[0,1],[1,2],[1,4],[0,8],[8,7],[9,10],[9,11],[4,3],[6,5],[4,6],[8,9]] 5 [0,1,0,1,1,0,1,0,0,1,0] [[0,1],[0,2],[1,3],[1,4],[2,5],[2,6],[3,7],[4,8],[6,9],[9,10]] 5 programmers.co.kr /** 1. 루트노드 출발, dfs로 구현 2. edges를 가보기 3. 방문한곳은 -1로 처리 4. 방문할때마다 최대 양의 수 저장 5. 중간에 늑대의수가 같아지면 탈출 6. 반복은 visited로 제거 **/ ..
2022. 1. 30.
[알고리즘 문제풀이] 프로그래머스 - 주차 요금 계산 / JAVA(자바)
https://programmers.co.kr/learn/courses/30/lessons/92341 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr /** 1. 주차시간 구하기 1-1) 최대 23:59분(또는 출차시간) - 입차시간 = 주차시간 1-2) 인트형으로 파싱 1-3) 입차 시에 해시 저장. 출차 시에 해시 삭제하면서 계산..
2022. 1. 30.