https://school.programmers.co.kr/learn/courses/30/lessons/12926
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- Java
class Solution {
public String solution(String s, int n) {
String[] L = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P",
"Q","R","S","T","U","V","W","X","Y","Z"};
String[] S = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p",
"q","r","s","t","u","v","w","x","y","z"};
StringBuilder sb = new StringBuilder();
for (int i=0;i<s.length();i++){
if(s.charAt(i)==' ')
sb.append(' ');
else if (s.charAt(i)>='a'&&s.charAt(i)<='z'){
int a = (int)(s.charAt(i)-'a')+n;
sb.append(S[a%26]);
}
else{
int a = (int)(s.charAt(i)-'A')+n;
sb.append(L[a%26]);
}
}
return sb.toString();
}
}
- Ruby
"a".ord -> 97
97.chr -> 'a'
def solution(s, n)
answer = ''
for i in 0..(s.length-1)
if s[i].ord>=97 and s[i].ord<=122
a = (s[i].ord-97+n)%26.to_i+97
answer.concat(a.chr)
elsif s[i].ord>=65 and s[i].ord<=90
a = (s[i].ord-65+n)%26.to_i+65
answer.concat(a.chr)
else
answer.concat(' ')
end
end
return answer
end
'Programmers > Java, Ruby' 카테고리의 다른 글
프로그래머스 Java : 최소직사각형 (0) | 2022.11.14 |
---|---|
프로그래머스 Java : 비밀 지도 (0) | 2022.11.13 |
프로그래머스 Java / Ruby : 예산 (0) | 2022.11.11 |
프로그래머스 Java : 3진법 뒤집기 (0) | 2022.11.10 |
프로그래머스 Java / Ruby : 이상한 문자 만들기 (0) | 2022.11.08 |