코딩테스트 60

코딩테스트 풀이 - n보다 커질 때까지 더하기 | break, while 문

문제 즐겨찾기 기능이 생겼네! 즐겨찾기 카테고리 별로 나눌 수 있는 기능까지 있으면 좋겠당 이 문제는 반복문을 사용해서 더하고 더하다가 그 값이 n 보다 커지면 계산을 멈추고 그 값을 출력한다. 반복문을 돌려 더한 값을 answer 로 해주고 n 보다 클 때 멈추고 answer 값을 출력해주기 위해 작성했는데 오류가 떴다. 사실 answer = answer 은 안적었었는데 오류가 나서 실험삼아? 적어보았다.. 말이 안되는걸 알면서두.. 머썩 뤼튼이에게 물어보니 ㅎ.. forEach 문에서는 break 나 continue 를 사용할 수 없다고 한다..! 충격 for 문으로 수정해보았다. 통과하였다..! 모르겠다고 바로 뤼튼이에게 물어보는게 뭔가 습관이 되어갈 것만 같은 느낌이다.. 이제 뤼튼이를 자제하고 ..

코딩테스트 2023.11.28

코딩테스트 풀이 - 수 조작하기 1 | 문자열을 배열로 바꾸기

w a s d 키를 보니까 게임이 하고 싶어졌다. w : +1 s : -1 d : +10 a : -10 control 매개변수에 있는 문자열을 하나하나 검색한 뒤 그 문자에 맞는 수 계산을 해줘야 한다. 각각의 계산을 변수로 지정해준 뒤 반복문을 돌려 계산을 진행해줘야하나? 아니면 반복문 안에 if 문을 작성해줘서 item 별로 검색을 해주는 방법도 있겠다. 전부터 switch 문을 사용해보고 싶었는데 이 경우에 사용이 가능할까? 반복문 안에 알파벳 별로 case 를 작성해주었다! 그런데 forEach 문에서 오류가 떴다.. 왜지!?.. 항상 하는 실수인 여러 문장 작성 할 때 { 중괄호 } 로 감싸주기도 완료했는데 !!! 문자열로 안 작성해줘서 그런가.. 해서 따옴표를 추가해도 똑같다 도저히 모르겠어서..

코딩테스트 2023.11.25

코딩테스트 풀이 - 더 크게 합치기 | 중첩 삼항연산자

숫자 값이 계산되지 않고 숫자만 합쳐지게 하려면 문자형으로 변환한 뒤 합쳐주고, 두 값을 숫자로써 비교해주기 위해서 다시 숫자형으로 변환하여 비교 후, 결과 값을 반환해보도록 하겠다.! 두 가지 테스트를 통과하였지만 ab와 ba 의 값 ( 본문에서 a ⊕ b와 b ⊕ a 의미 ) 이 같을 때의 경우를 작성해주지 않았다 분명 제출하면 통과하지 못할 것.. if 문 말고 삼항연산자로 간단하게 쓰고 싶었던 나는 삼항연산자에 다른 조건을 추가할 수 있는 방법을 찾아보았다. 중첩 삼항연산자를 사용했다. 중첩이 되는 경우는 if 문을 쓰는 것이 가독성이 더 좋을 것이라고 생각된다. ab 와 ba 의 값이 갔을 때는 ab 를 출력하고 그렇지 않은 경우에는 ab 가 ba 보다 크면 ab를, 그렇지 않으면 (ba가 더 ..

코딩테스트 2023.11.25

코딩테스트 풀이 - 첫 번째로 나오는 음수 | break

반복문을 작성할 때 forEach 문을 자주 이용했었는데 이거는 인덱스가 필요하니까 for 문으로 돌려줘야겠다! 앗 else if 문에 0보다 큰 조건을 넣은게 잘못되었다..! answer 의 값을 -1 로 해주어서 음수가 없으면 -1이 그대로 출력되게 작성해주었다. 결과는 성공! 이 아니었다. 제출 후 채점하기를 누르니까 틀렸다고 나왔다.. 네? 이유가뭐에요? 여러 개 중에서 딱 테스트1,2 로 있던 것만 통과를 했길래 뭐가 잘못된지 보려고 테스트 케이스를 추가해보았다. 아하 음수가 여러 개 있었을 때 첫 음수의 인덱스를 출력해야하는데 반복문이 멈추지 않고 끝까지 돌아버리니까 마지막 음수의 인덱스가 출력되어서 실패했던 것이었다! 반복문을 종료시켜 줄 break 구문을 추가해주었다. 🎈 break 현재 ..

코딩테스트 2023.11.23

코딩테스트 풀이 - 공백으로 구분하기 2 | trim(), split(), 빈 문자열 확인하는 방법

간단하게 splite 을 사용해서 공백으로 구별하면 될거라 생각했는데 앞 뒤 공백 때문에 통과가 안되었다.! trim() 메서드를 사용해서 문자열의 앞 뒤에 위치한 공백은 제거해 주었는데 글자 사이에 있는 여러개의 공백 때문에 오류가 생겼다. 글자 사이에 공백이 많은 것을 어떻게 처리해야 할까?! 1. === 연산자로 빈 문자열 확인하기 2. string.length 로 빈 문자열 확인하기 결과값 배열에 반복문을 돌려 빈 문자열이 아닌 것만 다른 배열에 가져와 반환해주었다. 🎈 trim() 문자열 양 끝의 공백을 제거하고 원본 문자열을 수정하지 않고 새로운 문자열을 반환한다. trim() 한쪽 끝의 공백만 제거한 문자열을 반환할 때에는 trimStart() 또는 trimEnd() 를 사용할 수 있다. 🎈..

코딩테스트 2023.11.22

코딩테스트 풀이 - n 번째 원소부터 | splice()

🎈 splice() 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용은 변경한다. array.splice( start, deleteCount, item ) 3개의 배개변수를 가질 수 있고, 첫 번째 매개변수는 필수요소이다. - start : 배열의 변경을 시작할 인덱스 배열의 길이보다 큰 값일 때 : 시작 인덱스가 배열의 길이로 설정 음수일 때 : 배열의 끝에서부터 요소를 세어나감 배열의 길이보다 클 때 : 0으로 설정 - deleteCount : 배열에서 제거할 요소의 수 생략할 때 / 배열 길이 - start 보다 큰 값일 때 : start 부터 모든 요소를 제거 0 이하일 때 : 어떠한 요소도 제거하지 않음, 최소한 하나의 새로운 요소를 지정해야 함 - item : 배열에 추..

코딩테스트 2023.11.22