[수박수박수?]
https://programmers.co.kr/learn/courses/30/lessons/12922
코딩테스트 연습 - 수박수박수박수박수박수?
길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조��
programmers.co.kr
* 로직
- 1부터 n까지 진행하면서
- 홀수 -> "수"
- 짝수 -> "박"
class Solution {
public String solution(int n) {
String answer = "";
StringBuilder sb = new StringBuilder();
int i=1;
while (i <= n) {
if(i%2 == 0) sb.append("박");
else sb.append("수");
i++;
}
return answer = sb.toString();
}
}
[문자열을 정수로 바꾸기]
https://programmers.co.kr/learn/courses/30/lessons/12925
코딩테스트 연습 - 문자열을 정수로 바꾸기
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니
programmers.co.kr
* 로직
- parseInt를 통해 정수로 바꾼다
class Solution {
public int solution(String s) {
int answer = 0;
return answer = Integer.parseInt(s);
}
}
[시저 암호]
https://programmers.co.kr/learn/courses/30/lessons/12926
코딩테스트 연습 - 시저 암호
어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 AB는 1만큼 밀면 BC가 되고, 3만큼 밀면 DE가 됩니다. z는 1만큼 밀면 a가
programmers.co.kr
* 로직
- 문자열 길이만큼 탐색하면서
- 현재 글자가 공백이면 공백을 추가
- 현재 문자가 대문자이면서 (현재 문자 + n만큼 증가) 값이 Z를 넘어가는 경우 -> 사이클을 돌린 값 추가
- 현재 문자가 소문자이면서 (현재 문자 + n만큼 증가) 값이 z를 넘어가는 경우 -> 사이클을 돌린 값 추가
- 위 3가지 조건을 벗어난다면 (현재 문자 + n만큼 증가)한 값을 추가
class Solution {
public String solution(String s, int n) {
String answer = "";
StringBuilder sb = new StringBuilder();
for(int i=0; i<s.length(); ++i) {
char ch = s.charAt(i);
if(ch == ' ') {
sb.append(ch);
continue;
}
int idx_origin = (int) ch;
int idx = ch + n;
// 현재 문자가 대문자인 상황에서 Z를 넘어가는 경우
if(idx_origin < 97 && idx > 90) {
idx = (idx_origin - 25) + (n-1);
sb.append((char) idx);
}
// 현재 문자가 소문자인 상황에서 z를 넘어가는 경우
else if(idx_origin >= 97 && idx > 122) {
idx = (idx_origin - 25) + (n-1);
sb.append((char)idx);
}
else sb.append((char) idx);
}
return answer = sb.toString();
}
}
'Algorithm > Problem_프로그래머스' 카테고리의 다른 글
프로그래머스(약수의 합, 이상한 문자 만들기, 자릿수 더하기, 자연수 뒤집어 배열로 만들기) - Java (0) | 2020.05.29 |
---|---|
프로그래머스(종이접기) - Java (0) | 2020.05.25 |
프로그래머스(서울에서 김서방 찾기, 소수 찾기) - Java (0) | 2020.05.25 |
프로그래머스(문자열 내림차순으로 배치하기, 문자열 다루기 기본) - Java (0) | 2020.05.25 |
프로그래머스(문자열 내 p와 y의 개수) - Java (2) | 2020.05.20 |