https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2021 KAKAO BLIND RECRUITMENT의 Level 2 문제다. 동일한 코딩테스트의 Level 2 문제인 순위 검색을 풀고 나니 꽤 비슷하게 느껴져서 빠르게 풀었다. 두 문제 동일하게 주어진 문자열이 가능한 모든 조합을 DFS를 통해 생성한다. 순위 검색은 이분 탐색을 해서 결과값을 구하지만, 이 문제는 map의 value를 탐색해 결과값을 구하는 것이 다르다. 처음엔 메뉴를 주문한 ..
https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2021 KAKAO BLIND RECRUITMENT Level 2 문제다. info의 각 값들을 2차원 배열에 넣고, query를 탐색하며 info를 하나하나 비교하는 코드를 작성했다. 정확성은 맞는데 효율성 테스트를 틀려서 문제 조건을 다시 보니, info 크기는 최대 50000이고 query 크기는 최대 100000이기 때문에 시간 초과가 날 수 밖에 없었다. https://coding-gra..
https://school.programmers.co.kr/learn/courses/30/lessons/72410 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2021 KAKAO BLIND RECRUITMENT Level 1 문제다. 정규 표현식을 잘 몰라서 지저분하게 코드를 작성했다. Level 1이기 때문에 딱히 설명할 것 없이 코드를 보면 이해가 된다. for문으로 하나하나 다 탐색해 숫자, 영어, -, _, . 이외의 문자가 들어올 경우 일단 *로 치환하고, 나중에 String의 replaceAll을 통해서 *를 ""(빈 문자열)로 없앴다. St..
https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO BLIND RECRUITMENT Level 2 문제다. info가 11, n의 최대가 10이므로 가장 먼저 백트래킹 DFS를 떠올렸다. DFS가 진행될수록 result에 화살을 쏜 개수를 저장한다. 라이언이 무조건 이겨야하는 경우만 고려하면 되므로, 어피치가 쏜 화살보다 한개 더 많은 화살을 쏜다고 가정했다. 라이언이 화살을 쏠 때마다 cnt를 감소시켜서, 남은 화살의 개수를 ..
https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO BLIND RECRUITMENT의 Level 2 문제다. 특별히 고려해야 할 것 없이 문제에서 요구하는 대로 구현하면 된다. TreeMap에 차 번호를 key값으로, time을 담은 ArrayList를 value로 저장했다. 그리고 map의 value를 하나씩 꺼내 시간을 계산했다. value인 ArrayList의 size가 홀수라면, 입차 후 출차 내역이 없는 것이므로 시간을..
https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO BLIND RECRUITMENT Level 2 문제다. 처음엔 조건에 맞는 소수라고 하니 꽤나 복잡해보였다. 주어진 숫자를 k진수로 변환 후, 0을 기준으로 잘라 소수인지 판별하면 된다. 예시를 보면 0을 기준으로 자르기만 하면 간단한 문제임을 알 수 있다. 437674 -> 211020101011 -> 211, 2, 1, 1, 11 -> 211, 2, 11 -> 3개 처음엔 ..
https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2022 KAKAO BLIND RECRUITMENT의 Level 1 문제다. 사용자별 신고 여부를 저장할 boolean 2차원 배열 report_yn을 생성했다. 만약 report_yn[i][j]가 true라면 i번째의 사용자가 j번째의 사용자를 신고한 것이다. HashMap map = new HashMap(); for(int i=0;i
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/sGKYC/btrRn0haEpg/DLB9fqvkXNkVYlpvPaPWGK/img.png)
https://www.acmicpc.net/problem/1516 1516번: 게임 개발 첫째 줄에 건물의 종류 수 N(1 ≤ N ≤ 500)이 주어진다. 다음 N개의 줄에는 각 건물을 짓는데 걸리는 시간과 그 건물을 짓기 위해 먼저 지어져야 하는 건물들의 번호가 주어진다. 건물의 번호는 1부 www.acmicpc.net 문제 숌 회사에서 이번에 새로운 전략 시뮬레이션 게임 세준 크래프트를 개발하기로 하였다. 핵심적인 부분은 개발이 끝난 상태고, 종족별 균형과 전체 게임 시간 등을 조절하는 부분만 남아 있었다. 게임 플레이에 들어가는 시간은 상황에 따라 다를 수 있기 때문에, 모든 건물을 짓는데 걸리는 최소의 시간을 이용하여 근사하기로 하였다. 물론, 어떤 건물을 짓기 위해서 다른 건물을 먼저 지어야 할..