일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- programmers
- spring
- Anolog
- session
- flask
- WIL
- python
- real time web
- javascript
- DI
- google oauth
- JWT
- Stream
- 항해99
- oauth
- server send event
- web
- jenkins
- Java
- cookie
- bean
- hanghae99
- html
- 생명주기 콜백
- SseEmitter
- Spring Security
- jQuery
- JPA
- Project
- Hibernate
Archives
- Today
- Total
끄적끄적 코딩일지
[Programmers]신규 아이디 추천(난이도:★★★★) 본문
https://programmers.co.kr/learn/courses/30/lessons/72410
코딩테스트 연습 - 신규 아이디 추천
카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로
programmers.co.kr
class Solution {
public String solution(String new_id) {
String t =new_id;
t = t.toLowerCase() //step 1
.replaceAll("[^-_.a-z0-9]", "") // step 2
.replaceAll("[.]{2,}", ".") // step 3
.replaceAll("^[.]", "").replaceAll("[.]$", ""); // step 4
if (t.equals(""))
t = "a"; // step 5
if (t.length() > 15)
t = t.substring(0, 15).replaceAll("^[.]", "").replaceAll("[.]$", ""); // step 6
if (t.length() < 3) {
// step 7
int repeatCount = 3 - t.length();
String l = new String(new char[] { t.charAt(t.length() - 1) }).repeat(repeatCount);
t = t + l;
}
return t;
}
}
'알고리즘' 카테고리의 다른 글
[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 |