728x90
반응형
프로그래머스 : JavaScript 알고리즘 100일 챌린지 35일차
- 프로그래머스 : https://school.programmers.co.kr/learn/challenges/training?order=acceptance_desc
- 유트브 참고 : https://www.youtube.com/watch?v=RMmOU2u-_as&list=PLkfUwwo13dlWZxOdbvMhkzhAowaiEjuGS
코딩 기초 트레이닝 Day35
1. 문자열의 앞의 n글자 : 문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 앞의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요.
function solution(my_string, n) {
var answer = '';
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
my_string | n | result |
"ProgrammerS123" | 11 | "ProgrammerS" |
"He110W0r1d" | 5 | "He110" |
답 확인하기
function solution(my_string, n) {
return my_string.slice(0, n)
}
2. 접두사인지 확인하기 : 어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다.
문자열 my_string과 is_prefix가 주어질 때, is_prefix가 my_string의 접두사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요.
function solution(my_string, is_prefix) {
var answer = 0;
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
my_string | is_prefix | result |
"banana" | "ban" | 1 |
"banana" | "nan" | 0 |
"banana" | "abcd" | 0 |
"banana" | "bananan" | 0 |
답 확인하기
const solution = (my_string, is_prefix) => my_string.slice(0,is_prefix.length).includes(is_prefix) ? 1:0
3. 문자열 뒤집기 : 문자열 my_string과 정수 s, e가 매개변수로 주어질 때, my_string에서 인덱스 s부터 인덱스 e까지를 뒤집은 문자열을 return 하는 solution 함수를 작성해 주세요.
function solution(my_string, s, e) {
var answer = '';
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
my_string | n | e | result |
"Progra21Sremm3" | 6 | 12 | "ProgrammerS123" |
"Stanley1yelnatS" | 4 | 10 | "Stanley1yelnatS" |
답 확인하기
function solution(my_string, s, e) {
const slicedString = my_string.slice(s, e+1)
const reverseStr = [...slicedString].reverse().join("")
const splitMyString = [...my_string]
splitMyString.splice(s, e-s+1, reverseStr)
return splitMyString.join("")
}
4. 세로 읽기 : 문자열 my_string과 두 정수 m, c가 주어집니다. my_string을 한 줄에 m 글자씩 가로로 적었을 때 왼쪽부터 세로로 c번째 열에 적힌 글자들을 문자열로 return 하는 solution 함수를 작성해 주세요.
function solution(my_string, m, c) {
var answer = '';
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
my_string | m | c | result |
"ihrhbakrfpndopljhygc" | 4 | 2 | "happy" |
"programmers" | 1 | 1 | "programmers" |
답 확인하기
function solution(my_string, m, c) {
const table = []
let result = ""
// 표 생성
for(let i = 0 ; i < Math.floor(my_string.length/m) ; i ++) {
const row = []
for(let j = 0 ; j < m ; j ++) {
const cur = my_string[i*m+j]
if(j+1 === c) result+= cur
row.push(cur)
}
table.push(row)
}
return result
}
5. qr code : 두 정수 q, r과 문자열 code가 주어질 때, code의 각 인덱스를 q로 나누었을 때 나머지가 r인 위치의 문자를 앞에서부터 순서대로 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요.
function solution(q, r, code) {
var answer = '';
return answer;
}
길라잡이
- 데이터를 수정해서 답을 구해보세요.
- 예시
q | r | code | result |
3 | 1 | "qjnwezgrpirldywt" | "jerry" |
1 | 0 | "programmers" | "programmers" |
답 확인하기
function solution(q, r, code) {
return [...code].reduce((acc, cur, idx) => {
return idx%q === r ? acc+cur : acc
}, "")
}
728x90
반응형