본문 바로가기

분류 전체보기181

[6기 프리코스 프론트] 1주차 회고 - 숫자야구 혼자 공부하면서 텐션이 떨어지고 우테코는 어떤 과정을 중요시 여기는지 궁금해서 6기 프론트엔드에 지원했다. 이 과정에서 새로운 input을 통해 나에게 고착된 잘못된 습관을 고치고 커뮤니케이션, 코드리뷰 역량을 기르고 싶다. 글솜씨가 없어서 이전엔 간단하게만 기록을 해왔지만 최대한 프리코스를 미션을 수행하면서 고민의 흔적과 배운 것들, 보충해야 할 것들을 기록하겠다. JS 컨벤션 커밋 컨벤션 이전엔 버그수정, 새로운기능 추가, 리팩토링 등 따로 분류를 안 하고 커밋했는데 이번에는 미리 짠 구현목록과 커밋 컨벤션에 따라 커밋했다. 이렇게 하니 집중해서 코드를 짤 수 있고 다른 내용과 섞여있지 않으니 문제가 발생한 위치를 유추하거나 히스토리를 볼 때 쉽게 찾을 수 있었다. Feat : 새로운 기능을 추가하는.. 2023. 10. 26.
[two pointer] 릿코드 27. Remove Element https://leetcode.com/problems/remove-element/ Remove Element - LeetCode Can you solve this real interview question? Remove Element - Given an integer array nums and an integer val, remove all occurrences of val in nums in-place [https://en.wikipedia.org/wiki/In-place_algorithm]. The order of the elements may be changed. Then r leetcode.com 첫번째 방법(성공) 문제에서 in-place, 순서는 변경해도 된다고 한다 => 포인터가 뒤에서 앞으.. 2023. 10. 22.
[그리디] 구명보트 https://school.programmers.co.kr/learn/courses/30/lessons/42885# 첫번째 (성공) 무게를 오름차순으로 정렬 최소, 최대 무게의 합이 limit 이하면 answer을 더하고 최소, 최대를 빼준다 limit이상이면 최대만 뺀다. function solution(people, limit) { var answer = 0; people.sort((a, b) => a -b); while(people.length) { if (people[0] + people[people.length-1] a - b); let left = 0; let right = people.length-1; while(left < right) { // 2명이 구명보트를 탈 수 있을 때 if (pe.. 2023. 10. 14.
[구현] 거리두기 확인하기 (2021 카카오 채용연계형 인턴십) https://school.programmers.co.kr/learn/courses/30/lessons/81302#fn1 첫번째 풀이 (성공) P를 기준으로 맨해튼거리 2는 상하좌우 2칸씩, 대각선 1칸씩이다. 이 범위안에 P가 있다면 P와 P사이에 X가 있는지. (PXP) P와 P가 대각선에 있을때 양옆에 X가 있는지를 확인해야한다 맨해튼 거리 2이하의 범위를 3파트 로직으로 나누고 P를 찾았을떄 해당 위치 기준 위의 로직에 걸리는 경우가 있으면 0리턴 전부 통과하면 1을 리턴했다. 범위1. P기준 1칸 상하좌우 P가 있으면 0을 리턴 범위2. P기준 1칸 대각선 P가 있는데 양옆 X가 없음 0을 리턴 범위3. P기준 2칸 상하좌우 P가 있는데 사이에 X가 없음 0 리턴 범위2 대각선 P의 양 옆 좌표.. 2023. 10. 14.
[union find, dfs] 전력망을 둘로 나누기 https://school.programmers.co.kr/learn/courses/30/lessons/86971# n은 2 이상 100 이하인 자연수입니다. wires는 길이가 n-1 => 완전탐색. 각 전선을 하나씩 끊어 보며 모두 탐색가능 첫번째 풀이 (성공) - 유니온 파인드 wires를 순회하며 앞에서부터 전선을 하나씩 끊는다 끊은 상황마다 union find를 통해 연결된 송신탑들의 부모를 통합한다 통합 뒤에 각 부모마다 송신탑개수를 구한다 그 중 최소, 최대 차이의 절대값을 구하고 이전의 answer과 비교한다 splice주의 splice는 원래 배열을 변경하고, 자르고 남은 부분을 리턴한다 const newArr = [...arr].splice() //가 아니라 const newArr = .. 2023. 10. 13.
[해쉬, 이진탐색, 문자열, regex, 정렬] 순위 검색 (카카오블라인드 2021) https://school.programmers.co.kr/learn/courses/30/lessons/72412 [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.] 카카오는 하반기 경력 개발자 공개채용을 진행 중에 있으며 현재 지원서 접수와 코딩테스트가 종료되었습니다. 이번 채용에서 지원자는 지원서 작성 시 아래와 같이 4가지 항목을 반드시 선택하도록 하였습니다. 코딩테스트 참여 개발언어 항목에 cpp, java, python 중 하나를 선택해야 합니다. 지원 직군 항목에 backend와 frontend 중 하나를 선택해야 합니다. 지원 경력구분 항목에 junior와 senior 중 하나를 선택해야 합니다. 선호하는 소울푸드로 chicken과 pizza 중 하나를 선택해야 합니다. 인재.. 2023. 10. 13.