728x90
⬛ 프로그래머스 | LV.2 큰 수 만들기 - 그리디 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 마냥 쉽지 않았다. 제한 조건에서 데이터가 100만 까지 들어올 수 있다고 했기 때문에 문자열 구성을 DFS 완탐으로 하는 건 불가능하다고 생각헀고, 그리디 적으로 매번 최적의 값을 고르면서 answer 값을 구성해야겠다고 생각했다. k개의 숫자를 빼서 만들 수 있는 가장 큰 값의 조합을 구해야 한다. 그리고..
⬛ 프로그래머스 (PCCP 기출) | LV.1 붕대 감기 - 단순 구현 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/250137 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 공격 attacks[][] 배열은 오름차순 정렬되어 있다고 나와있다. 그 중 max 시간대를 알아야 마지막 time처리가 가능해서 마지막 값의 attaks[N][0]의 값을 maxTime으로 두고 for문으로 (t=1~maxTime)까지 순회시켰다. 그리고 for문으로 1번의 순회에서 모든..
⬛ 프로그래머스 | LV.2 숫자 블록 - 단순 구현 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/12923 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 문제를 유심히 보면서 각 값에 대해서 그 약수 중 max값이 배열값으로 담긴다는 규칙성을 발견했다. 이 데이터 크기가 무슨 10억까지로 되어 있는데.. 최대한 효율적으로 처리해야 하고 주의해야 한다. 아 그리고 처음에 각 블록에 적힌 숫자 값이 10,000,000까지인 것을 못봤다. => 걍 0 이 많길래 1..
⬛ 프로그래머스 | LV. 2 시소 짝꿍 - 비례식 활용 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/152996 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 사람 수가 10만으로 들어오기 떄문에 이중for문을 돌면 반드시 시간초과가 뜬다. 효율적인 풀이로 접근해야 한다. 첫 시도 | 최대 공약수, DFS로 풀이 시도 매번 두 수에 대한 최대 공약수를 구해서 두 값에 대한 최대 공약수로 나눈 몫이 1, 2, 3, 4 에 포함되는지 확인하는 식으로 풀었다. 수의..
⬛ 프로그래머스 | LV.3 없어진 기록 찾기 (MySQL) https://school.programmers.co.kr/learn/courses/30/lessons/59042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 입양기록은 있고, 보호소 기록은 없는 데이터를 조회하는 문제였다. 생각을 좀 해서 입양 기록 ANIMAL_OUTS를 A테이블로 두고, 보호소 기록인 ANIMAL_INS를 B 테이블로 두어 LEFT OUTER JOIN을 하면 되겠다고 생각했다. 처음에는 LEFT OUTER JOIN을 하면 자연스럽게 A테이블에만 있는 데이..
⬛ 프로그래머스 (카카오) | LV.2 거리두기 확인하기 - BFS 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 처음에는 P를 갖는 x,y 좌표들을 모두 pQ에 담아서 경우의 수에 따라 처리를 하려고 했다. 조건이라 함은 맨허튼 거리를 모든 P간에 구해두고, 현재 P위치에서 맨허튼 거리 2이하의 좌표 사이에서 파티션 존재유무를 확인하면 되지 않을까 했는데, 이렇게 시도하다가 실패헀다.. 풀이를 찾아보고 이..
⬛ 프로그래머스 (카카오) | LV.3 양과 늑대 - DFS 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/92343 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 DFS로 깊이 탐색을 시도하되, 방문한 정점에 대한 처리 후 (늑대 ≥ 양 개수) 가 커지는 시점이 오면 return을 시키고 다른 정점에 대해 방문 처리하려고 생각했다. 근데 생각보다 조건을 처리하는 부분이 좀 까다롭게 느껴졌다. 1) DFS를 호출하며 매번 현재 깊이에 대한 양, 늑대 개수 처리를 ..
⬛ 프로그래머스 (카카오) | LV.1 개인정보 수집 유효기간 - 단순 구현 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 n개의 개인정보 중 약관 type에 따라 현재 시점에서 파기할 개인정보 번호 목록을 리턴하는 문제이다. 문제가 요구하는 흐름대로 코드에 구현하면 된다. 🎈 [주의] split 메서드 사용시 실수하기 쉬운 것 (.) 구분자 → split(”\\ .”) 계속 오류가 나서 원인을 못찾다가 ..
⬛ 프로그래머스 | LV.3 있었는데요 없었습니다 (MySQL) https://school.programmers.co.kr/learn/courses/30/lessons/59043 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 이 문제의 경우 두 테이블 간 PK와 FK로 JOIN을 해서 입양일(OUT) B.DATETIME이 보호시작일(INS) A.DATETIME 보다 빠른 케이스를 추출해내야 한다. JOIN으로 대상 테이블 지칭 후, FK 활용하여 ON 조건을 작성하여 풀면 된다. 💚 제출 코드 -- 코드를 입력하세요 SELECT A.AN..
⬛ 프로그래머스 (카카오) | LV.3 미로 탈출 명령어 - 구현 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 문제는 S (x,y) → E(r,c) 까지 k칸으로 갈 수 있는 경로 중 사전 순 가장 빠른 경로를 리턴하고 없으면 impossible을 리턴하라고 되어 있다. 가장 처음 풀이로 생각이 들었던 건 문자열의 사전 순인 [d, l, r, u] 방향으로 순으로 모든 경로를 완전 탐색 해야 하나 ? 였..
⬛ 프로그래머스 | LV.2 광물 캐기 - DFS 완전 탐색 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 문제를 보면서 캐낼 대상인 광물 순서는 고정인데 매번 다이아를 먼저 쓰는 게 최선이 아닐 수 있다고 생각했기 때문에 완전 탐색을 쓰는 게 맞다고 생각했다. 예를 들어 다이아 곡갱이를 초반에 다 써버렸는데 대상 광물 마지막 순서에 다이아가 몰릴 경우 최소 피로도 소모가 아닐 수 있다. 모든 케이스를 다..
⬛ 프로그래머스 | LV.2 무인도 여행 - DFS or BFS 문풀 (Java) https://school.programmers.co.kr/learn/courses/30/lessons/154540 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚문제 접근 방식 이 문제의 경우 DFS로 풀든, BFS로 풀든 시작점에서 갈 수 있는 유효한 무인도를 모두 돌면서 누적한 값을 계속 List에 담아주면서 처리하고 그걸 오름차순 정렬하여 반환하면 되는 문제이다. 나는 BFS로 풀었다. 1) board[][]에 String으로 들어오는 지도 정보를 char 형으로 ..
24.03.09 (금) 나온 질문 공유 웹 서버와 WAS의 기본적인 차이점 웹서버는 정적 컨텐츠, WAS는 동적 컨텐츠를 생성하고 비즈니스 로직을 처리 MSA의 장단점을 설명해주세요 장점 독립된 서비스 개발 및 배포 장애 격리 서비스별 스택을 다양하게 가져갈 수 있음 단점 통합 테스트가 어렵다 통신 오버헤드 발생 WAS 만 사용하면 안되는지 - 분리하여 구성했을 때 이점이 명확해서 분리 구성한다. 서버 부하 방지 실제로 대규모 서비스→ 트래픽 분산을 위해 여러 WAS를 둬야함. 로드밸런싱 역할 보안 강화 : 웹서버 SSL/TLS 처리 가능, WS, WAS는 다른 포트 사용하므로 WAS에 방화벽쳐서 보안 더 강화할 여지도 있음 MVC 패턴이 무엇인지 간단하게 설명 개념 View : 사용자가 보는 부분 Mo..