일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- SseEmitter
- jQuery
- jenkins
- WIL
- programmers
- python
- html
- DI
- JPA
- hanghae99
- oauth
- 항해99
- real time web
- javascript
- bean
- session
- server send event
- JWT
- Spring Security
- 생명주기 콜백
- web
- Hibernate
- spring
- Anolog
- Project
- cookie
- Java
- google oauth
- flask
- Stream
Archives
- Today
- Total
끄적끄적 코딩일지
[Programmers]시저암호(난이도:★★★★) 본문
https://programmers.co.kr/learn/courses/30/lessons/12926
코딩테스트 연습 - 시저 암호
어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀
programmers.co.kr
class Solution {
public String solution(String s, int n) {
return solutionA(s,n);
}
public String solutionA(String s,int n){
char[] arry = s.toCharArray();
// ascii code 사용
for(int i =0 ; i < arry.length;i++){
if(arry[i] != ' '){
if(arry[i] < 97 && arry[i] + n > 96){
arry[i] -=(26-n);
}else
arry[i] += n;
if((arry[i] > 90 && arry[i] < 97) || arry[i] > 122){
arry[i] -= 26;
}
}
}
return new String(arry);
}
}
'알고리즘' 카테고리의 다른 글
[Programmers]약수의 개수와 덧셈(난이도:★★★★) (0) | 2022.05.16 |
---|---|
[Programmers]신규 아이디 추천(난이도:★★★★) (0) | 2022.05.16 |
[Programmers]숫자 문자열과 영단어(난이도:★★★★) (0) | 2022.05.16 |
[Programmers]소수 만들기(난이도:★★★★) (0) | 2022.05.16 |
[Programmers]문자열 내림차순으로 배치하기(난이도:★★★★) (0) | 2022.05.16 |