본문 바로가기

개발자취업20

99클럽 코테 스터디 14일차 TIL - 브실이의 입시전략 (백준 29723 / JavaScript) 오늘의 문제 링크 ⭐ intro : 문제를 생각해나간 방식이번에도 얼추 중복문제 추리는 문제일것으로 예상하고 Set() 쓰면 되려나 싶었는데 key, value값이 다 필요하더이다... 겸사겸사 다시 Map() 유형도 다시 파악할 수 있겠다 싶었다. 일단 문제는 금방 파악되었다. 첫줄에 브실이가 수강한 과목수 N, 대입전형에 필요한 과목수 M, 브실대학에서 공개한 과목수 K가 주어지고, 아래에는 N개수만큼 브실이의 성적들이 나열되고, 이어서 K개 개수만큼 필요한 과목수가 나열되어있다. 여기서 얼추 내가 생각한 방향은 다음과 같다input에 들어오는 매개변수의 정리브실이가 수강한 과목들을 오름차순으로 정렬정렬하면서 대학의 필수과목들을 각각 최소, 최대값에 저장해두고 Map에서 제거제거된 Map에서 최소, .. 2025. 4. 18.
99클럽 코테 스터디 13일차 TIL - 단어 정렬(백준 1181 / JavaScript) 오늘의 문제 링크 ⭐ intro : 문제를 생각해나간 방식 단어들 목록에서 중복값을 제거하고, 그 중복이 제거된 값을 이용해서 정렬하는 문제였다. Set() 자료구조를 얼추 익혔던 지라 이제 중복제거 문제는 저절로 손에 손이 가는듯 하다. sort 정렬 구문에 따로 콜백함수가 들어갈 수 있었다는 사실을 이제 알았고... (항상 단일로만 써서 숫자만 정렬했던 나 자신에 반성...) sort가 돌아가는 방식에 있어서 한번 더 공부해 볼 수 있었다. 생각보다 간단하게 풀 수 있었다. 특히 localeCompare()를 잘 몰라서 되게 해멨었다... ⭐ 풀이과정 앞선 문제와 마찬가지로 배열 구문의 input값들을 배열 구조분해 할당으로 분리해주고, 런타임에러가 발생하지 않도록 주어진 조건 갯수만 반복하도록 배열.. 2025. 4. 17.
99클럽 코테 스터디 12일차 TIL - 임스와 함께하는 미니게임 (백준 25757 / JavaScript) 오늘의 문제 링크 ⭐ intro : 문제를 생각해나간 방식문제를 풀고 이해하는데 있어서 꽤나 오랜시간이 걸렸었다. 이 문제의 키포인트는 첫번째 문장의 '임스가 미니게임을 같이할 사람을 찾는다' 는 조건이었다. 이말인즉 임스는 '무조건' 게임에 한번씩 들어간다는 것이다. 즉 2, 3, 4명이서 플레이 하되 필요한 인원수는 임스 + n명이기에 필요한 인원수는 1, 2, 3명인 것이다. 그리고 같이 플레이하고자 하는 사람 중 동명이인은 존재하지 않는다라는 조건, 즉 중복조건을 제거하고 남은 인원수를 1, 2, 3명씩 나누면 임스랑 게임을 중복없이 진행하는 횟수를 만들게 된다. ⭐ 풀이과정먼저 input값을 알맞게 잘 조리한다. 상단 조건중 인원수 N과 게임종료 G, 그리고 나머지 값들은 참여인원들이므로 전개연.. 2025. 4. 16.
99클럽 코테 스터디 11일차 TIL - Repeated DNA Sequences (리트코드 187 / JavaScript) 오늘의 문제 링크 ⭐ intro : 문제를 생각해나간 방식 모종의 DNA 배열 (진짜인지는 모르겠지만 뭐 비슷하것지...)이 주어질때, 특정 패턴이 반복되는것을 찾아내서 어떤 패턴이 존재하는지 뱉어내는 함수를 만드는 문제이다. 특정 조건값의 길이가 정해져있으므로 (length === 10) 인덱스가 하나씩 증가하면서 10개씩 비교해나가며 중복값을 찾아내면 되는데, 아무래도 '중복'값을 지정해야하니 Map이나 Set을 이용하면 될 것 같다. 한번 풀어보도록 하자. ⭐ 풀이과정 먼저 기본적인 에러처리로, s값이 10미만일 경우 빈값이 리턴될 수 있도록 한다. 왜냐하면 DNA 코드는 10개부터 시작하므로... 그리고 조각조각 잘라둔 객체 tmp와 응답값을 모아둔 객체 res를 지정해둔다.var findRepe.. 2025. 4. 15.
99클럽 코테 스터디 10일차 TIL - 평행선(백준 2358 / JavaScript) 문제 출처 ⭐ intro : 문제를 생각해나간 방식꽤나 머리를 싸멨던 문제였다. 평행하는 선 좌표는 x,y 중에서 뭔가 공통된게 있을까 싶었는데, 이미 질문을 내린 시점에서 답을 알고 있었다. x축에 평행한 선은 x값이 어떻든간에 상관없이 y값이 동일하기만 하면 하나의 평행한 선이 이어지게 된다. 그리고 문제에서 같은 좌표가 여러번 주어질 수 있다는것은 중복을 허용한다는 뜻으로 y값이 동일한 값 2개 이상을 찾아내면 x축에 평행한 선의 갯수를 만나게 된다. 반대로 y축에 평행한 선은 위와 마찬가지 로직으로 x값이 동일한 값 2개 이상을 찾아내면 y축에 평행한 선의 갯수를 만나게 된다. 그렇지만 로직이 서로 반대축을 바라보고 있지만 서로 똑같은 축의 값을 동일하게 가져가는 횟수는 동일하므로, 코드의 통일성.. 2025. 4. 14.
99클럽 코테 스터디 9일차 TIL - Design HashMap (리트코드 706 / JavaScript) 오늘의 문제 링크 ⭐ intro : 문제를 생각해나간 방식라이브러리를 생성하지 않고 class를 이용해서 HashMap이라는 기능을 구현하는 문제이다. 영어로 되어있는 리트코드라 천천히 해석하면서 확인해나갔다.MyHashMap()은 빈 map을 생성한다 (myHashMap 생성자함수 생성)put(key, value)를 실행하면 맵에 해당 값이 생성됌. 이미 존재하는 key값이라면 value를 덮어씌우고 업데이트한다.get(key)를 실행하면 key에 매핑되어있는 value를 호출하고 존재하지 않는 key를 호출하면 -1을 호출remove(key)를 실행하면 해당 key와 그 속해있는 value값을 삭제한다.기존에 stack, queue를 구현했던것과 비슷하게 class문법을 활용해서 작성하면 되겠다 싶었.. 2025. 4. 11.