문제 🔽
https://school.programmers.co.kr/learn/courses/30/lessons/87390
다른사람 풀이 🔽
function solution(n, left, right) {
var answer = [];
for (let i = left; i <= right; i++) {
answer.push(Math.max(i % n, parseInt(i / n)) + 1)
}
return answer;
}
내풀이🔽
1. 실패 ❌ => ( 이유를 모르겠다 .. )
function solution(elements) {
var answer = 0;
let stack = []
for(let i=1; i<=elements.length; i++){
for(let j=0; j<elements.length; j++){
let sum =0;
for(let z=j; z<j+i; z++){
if(z>=elements.length){
sum+=elements[z-elements.length+1]
}else{
sum+=elements[z]
}
}
stack.push(sum)
}
}
answer = new Set(stack)
answer = [...answer]
return answer.length;
}
2. 성공 ⭕
function solution(n, left, right) {
let answer =[]
const returnArrayValue = (index,t)=>{
let num1=Math.ceil((index+1)/t)
let num2=(index+1)%t
if(num2===0){
num2=t
}
if(num1>=num2){
return num1
}else{
return num2
}
}
for(let i=left; i<=right; i++){
answer.push(returnArrayValue(i,n))
}
return answer
}
느낀점🔽
연산에서 ()를 하지 않아 num1 = Math.ceil((index+1)/t) ◀ 요부분에서 계속 에러가 났었다....
그리고 문제를 제대로 읽지않아서도 시간이 오래걸렸다...
'Javascript' 카테고리의 다른 글
프로그래머스 코딩테스트 풀이(js) > 의상(lv2) (0) | 2023.07.04 |
---|---|
프로그래머스 코딩테스트 풀이(js) > 행렬의 곱셈(lv2) (0) | 2023.07.03 |
프로그래머스 코딩테스트 풀이(js) > 연속 부분 수열 합의 개수(lv2) (0) | 2023.06.30 |
프로그래머스 코딩테스트 풀이(js) > H-index(lv2) (0) | 2023.06.29 |
프로그래머스 코딩테스트 풀이(js) > 귤고르기(lv2) (0) | 2023.06.28 |