이 블로그 검색

2018년 7월 10일 화요일

[백준 2629] 양팔저울

[ 백준 2629 : 양팔저울 ]

처음에 문제를 보고 단순히 전체 계산하면 된다고 생각했다.
어짜피 나올 수 있는 수는 0부터 15000 사이였고 이 나올 수 있는 무게 중 구슬 무게가 있으면 Y 없으면 N 을 출력하도록했다.

나는 이런 메모이제이션 문제를 풀 때 항상 푸는 틀? 같은게 있는데 이번엔 그렇게 풀지 않고 FOR문으로 돌면서 풀려고 시도했다.
근데 계속 틀려서 그냥 풀던 방식 재귀로 푸니까 풀렸다.....뭘 잘못했나보다..

로직은
SUM이라는 이차원 배열을 놓고 추를 0개 올렸을때 + 1개 올렸을 때 ... + 다 올렸을때의 모든 체크가 마지막 배열에 담겨있다.

PRESUM이라는 함수는
(다음 추 , 현재추 + 현재까지의 무게 )
(다음 추 , 현재까지의 무게)
(다음 추 , 현재 무게에서 현재 추를 왼쪽으로 옮겼을때)
이렇게 재귀적으로 돌며 모든 가능한 수를 체크한다.

한번 체크했던 무게라면 바로 반환을 하며 함수를 끝내준다. 시간을 절약한다.

댓글 없음:

댓글 쓰기

[백준 16236] 아기 상어

[ 백준 16236 : 아기 상어 ] 2018 삼성전자 sw직무 하반기 기출문제입니다. 역대 삼성전자 기출문제가 그렇듯 역시나 BFS,DFS,완탐,DP,단순구현 입니다. 저는 문제를 단순히 BFS로 풀어갔습니다. 조건만 잘 지킨다면 한번에 ...