[프로그래머스] 카카오_신규 아이디 (자바 풀이)
- 알고리즘 문제 해결(PS)/[프로그래머스]
- 2022. 4. 11.
문제
https://programmers.co.kr/learn/courses/30/lessons/72410?language=java
풀이
문제에 주어진대로 구현하면 되는 아주 간단한 문제이다. 코드를 보면 충분히 이해할 수 있다.
코드
class Solution {
public String solution(String new_id) {
// 1단계
String answer = new_id.toLowerCase();
// 2단계
String temp = "";
for(int i=0; i<answer.length(); i++){
if(check(answer.charAt(i))){
temp += answer.charAt(i);
}
}
answer = temp;
// 3단계
temp = "";
boolean flag = true;
for(int i=0; i<answer.length(); i++){
if(answer.charAt(i) =='.' && flag){
flag = false;
temp += answer.charAt(i);
}else if(answer.charAt(i) != '.'){
temp += answer.charAt(i);
flag = true;
}
}
answer =temp;
// 4단계
if(answer.charAt(0) == '.'){
answer = answer.substring(1);
}
if(answer.length() >=1 && answer.charAt(answer.length()-1) =='.'){
answer = answer.substring(0, answer.length()-1);
}
// 5단계
if(answer.length() == 0){
answer = "a";
}
// 6단계
if(answer.length()>=16){
answer = answer.substring(0,15);
}
if(answer.charAt(answer.length()-1)=='.'){
answer = answer.substring(0,answer.length()-1);
}
// 7단계
while(answer.length()<=2){
answer += answer.charAt(answer.length()-1);
}
return answer;
}
public static boolean check(char ch){
if( (ch>='a' && ch<= 'z' ) || (ch>='0' && ch <='9') || ch=='-' || ch=='_' || ch=='.'){
return true;
}else return false;
}
}
반응형
'알고리즘 문제 해결(PS) > [프로그래머스]' 카테고리의 다른 글
[프로그래머스] 카카오_합승 택시 요금 (자바 풀이) (0) | 2022.04.21 |
---|---|
[프로그래머스] 카카오_순위 검색 (자바 풀이) (0) | 2022.04.20 |
[프로그래머스] 카카오_블록 이동하기 (자바 풀이) (0) | 2022.03.29 |
[프로그래머스] 카카오_자물쇠와 열쇠 (자바 풀이) (0) | 2022.03.09 |
[프로그래머스] 카카오_괄호 변환 (자바 풀이) (0) | 2022.03.09 |