[프로그래머스] Lv. 1 시저 암호(Java)
by rowing0328https://school.programmers.co.kr/learn/courses/30/lessons/12926
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
정답 코드
public class Solution {
public String solution(String s, int n) {
StringBuilder builder = new StringBuilder();
for (char c : s.toCharArray()) {
builder.append(push(c, n));
}
return builder.toString();
}
private char push(char c, int n) {
if (!Character.isAlphabetic(c)) return c;
int offset = Character.isUpperCase(c) ? 'A' : 'a';
int position = c - offset;
position = (position + n) % ('Z' - 'A' + 1);
return (char) (offset + position);
}
}
설명
- 입력 문자열의 모든 문자에 대해 반복
- 알파벳이 아닌 경우 문자를 그대로 이어 붙이기
- 알파벳인 경우 n만큼 밀어 이어 붙이기
실행 결과
참고 자료 :
취업과 이직을 위한 프로그래머스 코딩 테스트 문제 풀이 전략 : 자바 편 | 김현이
프로그래머스 코딩 테스트 문제 풀이 전략: 자바 편 | 김현이 - 교보문고
프로그래머스 코딩 테스트 문제 풀이 전략: 자바 편 | 핵심 개념, 프로그래머스에서 선별한 79개 문제 풀이, PCCP 대비까지! 합격에 한 걸음 더 가까워지는 실전형 코딩 테스트 문제 풀이 가이드개
product.kyobobook.co.kr
'🏅Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스] Lv. 2 거리두기 확인하기(Java) (0) | 2025.01.13 |
---|---|
[프로그래머스] Lv. 1 이상한 문자 만들기(Java) (1) | 2025.01.13 |
[프로그래머스] Lv. 1 자연수 뒤집어 배열로 만들기(Java) (0) | 2025.01.13 |
[프로그래머스] Lv. 2 삼각 달팽이(Java) (2) | 2024.12.28 |
[프로그래머스] Lv. 4 호텔 방 배정(Kotlin) (0) | 2024.12.27 |
블로그의 정보
코드의 여백
rowing0328