Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 데이터베이스
- 애플
- 운영체제
- 반응형 웹
- db
- c++
- ECMAScript6
- codewars
- string
- 알고리즘
- Javascript
- 정규표현식
- ECMAScript2015
- java
- 기억장치
- binary
- 자바스크립트
- 식물키우기
- 아이폰
- styled-components
- 배포
- 컴퓨터
- Algorithm
- LeetCode
- ES6
- 리액트
- react
- 맛집
- 자바
- git
Archives
- Today
- Total
에브리 저장소
[Codewars - 7 kyu] Mumbling 본문
이 문제는 설명이 없습니다.(?)
accum이라는 메서드에 문자열 인자를 넣었을 때의 출력 값 예시를 보여주고 동일하게 동작하도록 구현하는 문제입니다. 규칙을 찾아내기 어려운 문제는 아니었습니다.
accum("abcd") -> "A-Bb-Ccc-Dddd"
accum("RqaEzty") -> "R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy"
accum("cwAt") -> "C-Ww-Aaa-Tttt"
규칙을 분석하면 각 글자들의 순서만큼 해당 글자를 나열하고, 제일 앞일 때는 대문자가 됩니다.
그리고 이 문자들은 '-' 로 연결된다. 정리하면 다음과 같습니다.
- 입력받은 문자열을 한 글자씩 나눠 배열을 만든다.
- 각 글자마다 대문자, 소문자를 만들어 저장합니다.
- 반환할 변수에 대문자를 더해줍니다.
- 순서만큼 소문자를 더해줍니다.
- 새로운 글자를 반환합니다.
- 모든 요소를 처리 후 각 요소를 '-'로 합쳐 문자열을 반환합니다.
풀이 코드는 더보기 버튼을 눌러주세요.
더보기
const accum = text => text.split('').map((char, idx) => {
let newChar = '';
const upper = char.toUpperCase();
const lower = char.toLowerCase();
newChar += upper;
while(idx--) {
newChar += lower
}
return newChar;
}).join('-');
'자료구조 · 알고리즘' 카테고리의 다른 글
[Codewars - 7 kyu] Ones and Zeros (0) | 2020.01.17 |
---|---|
[Codewars - 7 kyu] Regex validate PIN code (0) | 2020.01.16 |
[Leetcode - String] Longest substring without repeating characters 풀이 (0) | 2019.11.10 |
[Leetcode - Binary] Sum of two integers 풀이 (0) | 2019.11.09 |
[C++] char형 데이터 int형으로 변환하기 (0) | 2019.04.30 |
Comments