-
프로그래머스 조이스틱 C++프로그래머스(Programmers) 2022. 3. 22. 00:50반응형
제한 사항
- name은 알파벳 대문자로만 이루어져 있습니다.
- name의 길이는 1 이상 20 이하입니다.
입출력 예
name return
"JEROEN" 56 "JAN" 23 => 풀이는 아래 그림으로 첨부하겠습니다.
#include <algorithm> #include <string> using namespace std; int solution(string name) { int answer = 0; int n = name.length(); int turn = n - 1; //조이스틱을 한 방향으로 쭉 움직였을 때 for (int i = 0; i < n; i++) { if (name[i] - 'A' < 14) answer += name[i] - 'A'; else answer += 'Z' - name[i] + 1; int ind = i + 1; while (ind < n && name[ind] == 'A') ind++; turn = min(turn, i + n - ind + min(i, n - ind)); } answer += turn; return answer; }
반응형'프로그래머스(Programmers)' 카테고리의 다른 글
프로그래머스 가장 먼 노드 C++ (0) 2022.04.22 프로그래머스 영어 끝말잇기 C++ (0) 2022.04.21 프로그래머스 n^2 배열 자르기 C++ (0) 2022.03.21 프로그래머스 가운데 글자 가져오기 (0) 2022.03.20 프로그래머스 비밀지도 C++ (0) 2022.03.13