알고리즘/programmers

[Programmers 코딩테스트 고득점 Kit] 조이스틱

꾸준함. 2021. 9. 24. 02:54

문제 링크입니다: https://programmers.co.kr/learn/courses/30/lessons/42860

 

코딩테스트 연습 - 조이스틱

조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글자면 AAA, 네 글자면 AAAA 조이스틱을 각 방향으로 움직이면 아래와 같습니다. ▲ - 다

programmers.co.kr

ZZAAAZ와 같은 케이스처럼 오른쪽으로 갔다가 왼쪽으로 돌아가는 케이스도 있으므로 단순 한 방향만 정해서 풀 수 없는 문제였습니다.

 

알고리즘은 아래와 같습니다.

1. name과 똑같은 길이의 A로만 이루어진 문자열 temp를 선언합니다.

2. 동시에 왼쪽과 오른쪽으로 i칸을 움직이며 temp[i]와 name [i]가 다를 경우 temp [i]를 업데이트하고 조작 횟수를 업데이트해줍니다.

2.1 2번 과정을 name과 temp가 같아질 때까지 반복합니다.

3. 2번에서 구한 조작 횟수를 반환해줍니다.

 

 

개발환경:Visual Studio 2017

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형