[알고리즘 조건]
[solution 1]
휴대폰 자판을 x축, y축의 개념으로 설정
왼손/오른손과 다음 숫자와의 거리 -> abs함수로 x축, y축의 거리를 구함.
X축은 문제가 없었지만 y축의 경우 문제가 있었는데, 0의 위치를 지정하는 것이었다.
1의 자리를 (0,0)으로 두고, 3쪽으로 갈수록 x값이 커지고, 7로갈수록 y값이 커지도록 설정하였는데,
0의 경우를 (1,3)으로 두는 규칙을 찾을수가 없었다.
그래서 결국 i==0 일 경우, 11로 바꿔서 위치를 설정하도록 했다.
[solution 2]
아예 처음부터 0~9의 키패드의 위치를 지정해두고 시작하는 방법도 있다.
위의 방법은 list를 이용하여, index = 0 -> 0의 위치 / index = 1 -> 1의 위치를 가리키도록 미리 설정해놓았다.
위치를 미리 지정하면 다음 조건문들을 봤을때 이해가 더 빠르게 되고, 코드가 간단해진다.
위치를 지정할때 list가 아닌 dictionary를 쓰는 방식도 있다
List와 비슷하지만 dictionay를 쓰는 것도 익혀야 하기 때문에 첨부한다.
'STUDY CODE > 매일 CODING' 카테고리의 다른 글
[매일알고] 타겟넘버 (0) | 2021.08.07 |
---|---|
[매일알고-8] 문자열 내 p와 y의 개수 (0) | 2021.03.16 |
[매일알고-6] 폰켓몬 (0) | 2021.03.16 |
[매일알고-5] 체육복 (greedy algorithm) (0) | 2021.03.15 |
[매일알고-4] 신규 아이디 추천 (0) | 2021.03.14 |