https://school.programmers.co.kr/learn/courses/30/lessons/12934 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 쉽지만 다양한 코드를 상기하고자 기록을 남깁니다. 나의 코드 function solution(n) { if(Math.floor(Math.sqrt(n)) == Math.sqrt(n)){ return Math.floor(Math.sqrt(n)+1)**2; }else{ return -1; } } 다른 사람 풀이 function solution(n) { let sqr = Math.sqrt(n); ..
전체 글
https://school.programmers.co.kr/learn/courses/30/lessons/12932 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제도 역시 프로그래밍적인 것 보다 수학적 풀이도 다시 상기하기위해 작성하였다. 나의 풀이 function solution(n) { return [...n+""].reverse().map(x=>+x); } 이 풀이를 하기전에 또 문제를 제대로 읽지 않았다. 정렬하고 뒤집기는 전혀다른 소리다 필자는 예제만 보고 내림차순 정렬로 이해해서 sort를 사용했다. 당연히 테스트 케이스는 통과했지만 제출..
https://school.programmers.co.kr/learn/courses/30/lessons/12931 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이것도 풀이 보다 내가 놓쳤던 개념을 작성하기 위해 적고 있다. 나의 풀이 function solution(n){ return n.toString().split("").reduce((acc,cur)=> acc += +cur,0) } 상기할 개념 /입력값 123 function solution(n){ return [...n+""] // ["1","2","3"] } 이렇게 string으로 만들고 ....
https://school.programmers.co.kr/learn/courses/30/lessons/12928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 1) function solution(n) { let result =[]; if(!n) return 0; ((n) => { for(i=1; i acc += cur ); } 왜 굳이 함수를 만들었을까 ???? 2) function solution(n) { let result = 0; for(i=1; i
for 문 for 반목문은 어떤 특정한 조건이 거짓으로 판별될 때까지 반복합니다. for ([초기문]; [조건문]; [증감문]) 문장 실행 순서 1. 초기문 2. 조건문 3. 문장 4. 증감문 1) 초기화 구문인 초기문이 존재한다면 초기문이 실행됩니다. 2) 조건문은 조건을 검사합니다. (1). 조건문이 참이면 반복문이 실행 (2). 조건문이 거짓이면 그 for문은 종결됩니다. (3). 조건문이 생략된다면, 그 조건문은 참으로 추정됩니다. 즉 계속 for문이 돌아감 3) 문장이 실행됩니다. 문장이 여러개일때는 { } 를 써서 문장들을 묶어 줍니다. 4) 갱신 구문인 증감문이 존재한다면 실행되고 다시 조건문 단계로 넘어갑니다. 순서를 다시 정리하자면 이렇게 계속 반복하는 것이다. 그런데 여기서 생각해야할 ..
https://school.programmers.co.kr/learn/courses/30/lessons/12925 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이건 풀이보다 다시한번 상기하자는 의미로 글을 적는다. 여러가지로 가능하다 function solution(s) { return Number(s); } function solution(s) { return s * 1; } function strToInt(str){ return str/1 } function strToInt(str){ return +str; } function solution(s) ..
https://school.programmers.co.kr/learn/courses/30/lessons/12922 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 코드 function solution(n) { const result = []; for(i=1; i "수박".repeat(n/2 + 1).slice(0,n))(n); } 다른 사람 풀이에서 조금 더 손을 봐줬다. 수박 이라는 2개가 반복이 되기에 나누기 2를 해주고 + 1을 해주었다. 그리고 0부터 n 까지 문자열을 자르면 정답 문자열을 자르는 다른 메소드로 substring()도 있다.
https://school.programmers.co.kr/learn/courses/30/lessons/12921 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 처음에 아 쉽네 하고 바로 풀었지만 효율성에서 시간초과되어서 시간이 조금 걸렸다. 결국 에라토스테네스의 체로 풀었다. 나의 코드 풀이1) function solution(n) { let arr = Array.from({length:n+1}, (v)=> true).fill(false, 0, 2); for(i = 2; i*i x + x)); // expected output: Array [..
1. 함수란? 함수는 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것이다. 매개 변수 (parameter) : 함수 내부로 입력을 전달받는 변수 인수 (argument) : 함수를 호출할때 괄호 안에 넣는 입력 반환값 (return value) : 출력 함수 정의 : 함수를 생성하는 것 함수 호출 : 인수를 매개변수를 통해 함수에 전달하면서 함수의 실행을 명시적으로 지시하는 것 함수를 호출하면 코드 블록에 담긴 문들이 일괄적으로 실행되고 실행 결과 , 즉 반환값을 반환한다 그런데 왜 함수를 사용하는 것인가 ??? 여러가지 이유가있다. 먼저 여러번 반복 작업해야하는 수고스러움을 덜어주고 그로인한 유지보수의 편의섭을 높이고 반복으로 인한 실수를 죽여 코드의 신뢰성을 높여 주..