문제🔽
https://school.programmers.co.kr/learn/courses/30/lessons/12941
다른사람 풀이 🔽
// 문제가 개편되었습니다. 이로 인해 함수 구성이나 테스트케이스가 변경되어, 과거의 코드는 동작하지 않을 수 있습니다.
// 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다.
function expressions(num) {
var answer = 0;
for (var i = 1; i <= num; i++) {
if ((num % i == 0) && (i % 2 == 1)) {
answer++;
}
}
return answer;
}
내풀이🔽
1. 첫번째 시도 -> 실패 ❌ ( 시간초과 ... )
function solution(n) {
var answer = 0;
for(let i=1; i<=n; ++i){
let sum =0;
for(let j=i; j<=n; ++j){
sum +=j;
if(sum===n){
++answer;
break;
}else if(sum>n){
break;
}
}
}
return answer;
}
2. 두번째 시도 -> 실패 ❌ ( 시간초과 ... )
function solution(n) {
let answer =0
let count=1
while(count<=n){
let sum =0;
for(let i=count; i<=n; i++){
sum+=i;
if(sum>=n){
if(sum==n){
++answer;
}
break;
}
}
++count
}
return answer
}
느낀점😮
같은 논리적 진행히더라도 어떤 메서드를 쓰느라에 따라 시간이 달라진다 ...
분명히 같은 논리적 진행이였는데 ... 후 ...
'Javascript' 카테고리의 다른 글
프로그래머스 코딩테스트 풀이(js) > 피보나치 수(lv2) (0) | 2023.06.17 |
---|---|
프로그래머스 코딩테스트 풀이(js) > 다음 큰 숫자(lv2) (0) | 2023.06.16 |
프로그래머스 코딩테스트 풀이(js) > 최솟값 만들기 (lv2) (0) | 2023.06.13 |
프로그래머스 코딩테스트 풀이(js) > JadenCase 문자열 만들기 (lv2) (0) | 2023.06.12 |
프로그래머스 코딩테스트 풀이(js) > 숫자 변환하기 (lv2) (0) | 2023.06.11 |