목록2023/08/21 (3)
연습장
먼저 모든 문제를 다 기록하려고 했으나. 비슷한 느낌의 문제도 많고 단순한 문제도 많아서 풀이는 따로 적지 않고 넘어갔다. 문제의 난이도는 쉬운문제도 있고 어려운 문제도 있었다. 어려운문제는 나만 어려운게 아닌걸 알려주듯 정답률이 낮고 푼 사람이 적었다. 다른 사람 풀이는 조금 어려운게 많았지만 그래도 보고 배울점이 많았다. 아쉬운점은 예제는 맞췄으나 제출시 오류가 날 경우 어떤 반례로 틀렸는지 알려주지 않아서 조금 답답했다. 0단계를 다풀면 배지 ? 도장? 스탬프 를 준다는 소문을 들었다. 그래서 열심히 풀었는데 안줬다. 그래서 찾아보니 정작 정해진 문제는 따로 100문제가 있었다. 그래도 점수는 많이 오른거 같아서 좋다. 현재 상황
Q. 0 이상의 두 정수가 문자열 a, b로 주어질 때, a + b의 값을 문자열로 return 하는 solution 함수를 작성해 주세요. 단순히 더하게 된다면 '582' + '734' = '582734' 가 되고 Number(a) + Number(b) 로 하면 1316이 나오지면 2번째 예시의 경우에는 계산이 되지않는다. 16 자리가 넘어가게되면 계산이 되지않는 문제가있다. 따라서 다음과 같이 해결하였다. // 16자리 이상 계산시 오류 // 1. 문자열을 뒤집고 // 2. 배열로 만들어서 // 3. 같은 인덱스 끼리 더하고 // 4. 10이상일 경우 다음 인덱스에 1 추가하고 -10 해준다. // 5. 배열을 합치고 // 6. 다시 뒤집는다. // 문자열 뒤집는 함수 const revStr = fu..
문제 자체는 직관적 이해가 되는 문제이다. 하지만 풀려고 하면 어렵다. 바깥 테두리를 하나의 사이클로 보고 반복문을 사용하였다. count = 입력되는 숫자 바깥 while 문 1번의 테두리 -> n (끝좌표) 값과 a (시작좌표) 값이 1번 바뀌게 된다. 안쪽 while 문 4개는 각각 왼쪽으로 이동, 아래로이동, 오른쪽으로이동, 위로이동 을 하게된다. function solution(n) { var answer = []; let count = 1; for (let i =0 ; i