⛵ 항해 중/2주차 알고리즘(프로그래머스)
1일차 → 가운데 글자 가져오기(Math.round(), Math.floor())
은돌1113
2021. 11. 8. 11:30
728x90
배정 받은 문제를 생각 보다 빨리 풀어서 다른 분들의 문제로 풀어보기로 했습니다.
문제 설명
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요.
단어의 길이가 짝수라면 가운데 두 글자를 반환하면 됩니다.
제한사항
s는 길이가 1 이상, 100 이하인 스트링입니다.
내가 푼 문제 풀이
Math.round() 함수는 소수점 이하를 반올림 한다.
function solution(s) {
let answer = '';
let length = Math.round(s.length / 2)
// 가운데 숫자를 구하기 위해서
// s.length를 2로 나눠서 가운데 숫자를 구한다.
// 소숫점으로 나올 경우를 대비해
// Math.round() 함수를 사용하여 반올림 해준다.
if(length >= 1 && length <= 100){
if(s.length%2 == 0){
// s의 길이가 짝수라면
answer = s[length-1]+s[length]
// 두 글자를 출력 해야 하기 때문에
// s[length-1]+s[length]를 해준다.
}else{ // s.length%2 == 1
// s의 길이가 홀수라면
answer = s[length-1]
// 한 글자만 출력하면 되기 때문에
// s[length-1]을 해준다.
// -1을 쓰는 이유는 index를 셀 때는 0부터 시작하기 때문이다.
}
}else{
return
}
return answer;
}
Math.floor() 함수는 소수점 이하를 버린다.
function solution(s) {
let answer = '';
let length = Math.floor(s.length / 2)
// 가운데 숫자를 구하기 위해서
// s.length를 2로 나눠서 가운데 숫자를 구한다.
// 소숫점으로 나올 경우를 대비해
// Math.floor() 함수를 사용하여 소수점 이하를 버린다.
if(length >= 1 && length <= 100){
if(s.length%2 == 0){
// s의 길이가 짝수라면
answer = s[length-1]+s[length]
// 두 글자를 출력 해야 하기 때문에
// s[length-1]+s[length]를 해준다.
}else{ // s.length%2 == 1
// s의 길이가 홀수라면
answer = s[length]
// 한 글자만 출력하면 되기 때문에
// s[length]을 해준다.
// -1을 쓰는 이유는 index를 셀 때는 0부터 시작하기 때문이다.
}
}else{
return
}
return answer;
}
https://programmers.co.kr/learn/courses/30/lessons/12903
코딩테스트 연습 - 가운데 글자 가져오기
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret
programmers.co.kr
728x90