https://school.programmers.co.kr/learn/courses/30/lessons/42860
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
👉 풀이
public class p42860 {
// https://school.programmers.co.kr/learn/courses/30/lessons/42860
public int solution(String name) {
int answer = 0;
int len = name.length();
int move = len-1; // 좌우 움직임 최소 값
for(int i = 0; i < len; i++){
// name의 각 위치에서 상하 최소 값 구하기
if(name.charAt(i) < 'N') answer += name.charAt(i) - 'A';
else answer += 'Z' - name.charAt(i) + 1;
// A 마지막 위치 구하기
if(i < len - 1 && name.charAt(i+1) == 'A'){
int lastAIdx = i + 1;
while (lastAIdx < len && name.charAt(lastAIdx)=='A'){
lastAIdx += 1;
}
move = Math.min(move, 2*i + (len-lastAIdx));
move = Math.min(move, i + 2*(len-lastAIdx));
}
}
return answer+move;
}
public static void main(String[] args){
String name = "JEROEN";
System.out.println(new p42860().solution(name));
}
}
Source
https://born2bedeveloper.tistory.com/26
[프로그래머스] 조이스틱_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42860 코딩테스트 연습 - 조이스틱 조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글
born2bedeveloper.tistory.com
https://hu-coding.tistory.com/m/121
[Java] 프로그래머스 Lv.2 > 조이스틱
https://programmers.co.kr/learn/courses/30/lessons/42860# 코딩테스트 연습 - 조이스틱 조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글자면 AAA,
hu-coding.tistory.com
'알고리즘 문제풀이 > 자바' 카테고리의 다른 글
[프로그래머스-그리디] 큰 수 만들기 JAVA 자바 (0) | 2022.11.24 |
---|---|
[프로그래머스-그리디] 체육복 JAVA 자바 (0) | 2022.11.21 |
[프로그래머스-그리디] 구명보트 JAVA 자바 (0) | 2022.11.21 |
[백준-그리디] 13305: 주유소 JAVA 자바 (0) | 2022.11.19 |
[백준-그리디] 11399: ATM JAVA 자바 (0) | 2022.11.19 |