788. Rotated Digits

홍범선·2023년 2월 26일
0

788. Rotated Digits

https://leetcode.com/problems/rotated-digits/

풀이(처음 풀었던 답)


숫자 0,1,8은 회전해봤자 0,1,8이 되고 숫자 2는 5로, 숫자 5는 2로, 숫자 6은 9로, 숫자 9는 6으로 회전한다. 그 이외에 숫자들은 회전하면 유효하지 않는 숫자가 된다. 이 조건을 cal함수로 구현하였고 회전을 마친 숫자와 원래 숫자와 비교해서 같거나 -1(유효하지 않는 숫자)이면 건너뛴다. 그렇지 않으면 result값을 1증가시킨다.

풀이(결과)

풀이(DP)


DP테이블을 만든다. 그 후 만약 112라는 숫자가 있을 때 112 // 10 = 11이고 나머지 값은 2가 된다. 즉 dp[11]은 이전에 구했으므로 0이 되고 나머지 2를 조건에 맞는지 확인해보면 "2569"안에 있으므로 dp[112] = 1이 될 것이고 ans은 1 증가할 것이다.

결과(DP)

profile
날마다 성장하는 개발자

0개의 댓글