
문제 설명자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한 사항3 ≤ n ≤ 1,000,000 더보기풀이 과정 떠오른 로직1. n을 x로 나눈 나머지가 1인 자연수를 뽑아서 배열로 만들어야겠다 2. 배열을 내림차순으로 정렬해야겠다 3. 배열의 [0]인덱스 숫자를 뽑아야겠다 입출력 예시 1) 10을 3으로 나눈 나머지가 1이고, 3보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 3을 return 해야 합니다. 2) 12를 11로 나눈 나머지가 1이고, 11보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 11을 retu..

문제 설명정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 문제 풀이더보기문제를 풀기 위해 생각한 로직은n의 약수 : 나눴을 때 나머지가 0인 수 for 문을 써서 1~n까지 다 나눠서 나머지가 0인 수만 걸러내면 되겠다. 걸러낸 수를 다 더하면 되겠다. 였다. for문을 이용하여 짠 첫번째 코드.function solution(n) { const sum = 0 for(let i = 0; i결과는 실패. 어떤 문제점이 있는지 모르겠어서 gpt한테 물어봤다. 1. 할당 연산자를 틀렸다! '===' 를 습관적으로 '='로 입력했다. 이런 초보적인 실수를! 난 초보지만. 2. const는 상수인데..

문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항N의 범위 : 100,000,000 이하의 자연수 풀이 과정더보기머릿속에서 떠오른 논리 전개는 이거였다.//자연수 n을 각 자릿수로 나누기 //자연수 n을 문자열로 바꿔서 문자열을 하나씩 나누는 방법은 없을까? //n의 모든 인덱스 더하기 모든 인덱스 더하기는 for문으로 처리할 수 있을 것 같지만, 자연수 n을 문자열로 바꿔서 문자열을 하나씩 나누는 방법을 잘 모르겠었다. 해당 메서드가 있을 것 같아 구글링을 했다. Array.from() 을 사용한 방법이 있었다. 유사배열객체(array-like..

팀 과제를 거의 마무리하고 마지막 merge랑 오류를 잡고, 마지막 발표 준비만을 앞두고 있던 날이었다. 오전 9시에 매니저님께서 슬랙 DM이 왔다. 주말에도 팀 과제를 하는 강행군 중에 도저히 어떻게 해야할지 모르겠는 문제가 있었는데, 주말이라 튜터님들이 계시지 않아 react 질문 슬랙방에 메시지를 남긴 걸 좋게 보셨던 듯 했다. 나한테 어떤 식으로 질문을 하고 사고를 하고 있는지 공부법을 공유해줄 수 있냐는 제안이었다. 처음엔 굉장히 흥미로웠으나 또한 부담스러웠다. 팀 과제를 하면서 내가 얼마나 부족한지 뼈저리게 깨닫고, 잘하는 팀원들과 계속 소통하며 팀 과제를 진행했으니 내 실력에 자신이 없었다. 발제면 React 수강생들과 튜터님들까지 계실 텐데 그럼 족히 100명은 넘을 텐데... 그러나 ..
1. 목표 - acync, await 함수를 이용하여 예제 함수를 리팩토링하고 싶음. 2. 모르는 것 - acync, await 가 비동기 함수를 동기적으로 변환하는 과정이라는 것을 알고 있음. - 예제 문서function loadJson(url) { return fetch(url).then((response) => { if (response.status == 200) { return response.json(); } else { throw new HttpError(response); } }); //fetch의 status 가 200이면 json()를 리턴하고, 아니면 오류를 리턴한다}를async function loadJson(url){ await fetc..

문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한 사항- arr은 길이 1 이상, 100 이하인 배열입니다.- arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 문제 풀이더보기//배열의 객체를 모두 더해서 (arr[0]+arr[1]+arr[2] ... +arr[arr.length]) - 반복문 사용 //배열의 길이만큼 나눈다 /(arr.length)라고 예상했다. 배열의 객체를 모두 더하는 방법은 for문을 사용하면 될 것 같다. 1차 코드function solution(arr) { var answer = 0; for (let i = 0; i이렇게 넣고 테스트를 돌려보니까 결괏값과 기댓값이 달랐다.뭐가 문제일까?..

첫 번째 팀 과제가 끝났다. 전체적인 과정을 되돌아보며 회고한다. 1. 팀 컨셉, 과제 방향 정하기주어진 과제는 개인과제였던 영화 페이지를 기반으로 팀 영화 페이지 만들기였다. 어떻게 만들까 하다가, 우리 팀 이름이 IN사이드 아웃이라서 감정에 따른 영화 추천 페이지는 어떨까요? 라고 이야기했다. 팀원들 모두 오케이했고, 그렇게 우리 팀 방향이 잡혔다. 구현 기능은 학원에서 필수 구현 사항이라고 리스트를 주었기 때문에 먼저 와이어프레임을 짜야 했다. 먼저 각자가 생각하는 프로젝트 컨셉 이미지를 가져왔고, UI 참고가 될만한 이미지도 함께 정했다. 컨셉과 색상 등이 정해지니 컨셉에 맞는 구체적인 기능 아이디어도 나왔다. 팀원들이 다들 적극적으로 아이디어를 내서 즐겁게 의견 교환을 했었다. 2. 와이어프레..

문제 설명단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한사항s는 길이가 1 이상, 100이하인 스트링입니다. 문제 풀이 과정더보기가운데 글자를 가져오기를 풀기 위한 아이디어는-단어를 하나식 쪼갠 문자열로 만든다-문자열의 길이를 반으로 나눈다-짝수일 때, 문자열의 길이/2 한 값과 (문자열의 길이/2)+1 한 값을 가져온다였다. 그리고 나는 이렇게 코드를 짜 보았다.function solution(s) { var answer = 's'; let vocabulary = answer.split(''); let halfVoca= if (vocabulary%2 === 0) { ..