코딩테스트 조이스틱 문제풀이
프로그래머스 조이스틱(level 2) 문제풀이
#조이스틱 위, 아래 움직여서 변환하는 횟수
def updown(data):
result = 0
for i in data:
result += min(ord("Z")-ord(i)+1, ord(i)-ord("A"))
return result
#전체 횟수구하기
def solution(data):
answer = updown(data)
print("단어변경", answer)
data = list(data)
data[0] = "A"
if "".join(data) == 'A'*len(data):
return answer
tmp = 987654321
for i in range(len(data)-1):
t_data = data[:]
t_data[i] = 'A'
cnt = 1
while(True):
print(i," ",cnt," ",t_data)
k = i-cnt
if t_data[k] != 'A':
t_data[k] = 'A'
if "".join(t_data) == 'A'*len(t_data):
tmp = min(tmp, cnt+i)
print("tmp", tmp)
break
cnt += 1
return answer+tmp
며칠동안 고생하다가 날 잡고 풀었음
각 자리마다 왼쪽으로 커서 옮기는 모든 경우들 중 가장 작은 횟수 구했음
풀고나서 질문하기나 맞은풀이 댓글들 보는데 문제가 정상은 아닌 거 같음
아무튼 생각도 하기 싫음
Author And Source
이 문제에 관하여(코딩테스트 조이스틱 문제풀이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kokodak/코딩테스트-조이스틱-문제풀이저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)