코딩테스트(17)
-
[프로그래머스 JAVA] 수식 복원하기
https://school.programmers.co.kr/learn/courses/30/lessons/340210 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 접근 방법 특별히 떠오르는 알고리즘은 없었다. 문제에서 제시한 힌트와 비슷한 방식으로도 풀이해봤고, 조금 더 최적화해서 진행해보기도 했지만 실행결과는 비슷해서 아쉬웠다. 풀이 방법 (2가지) 1. 문제 설명대로 풀어본 코드 문제에서 제시한 힌트는 아래와 같다. 가능한 STRAT진수 ~ END진수 를 체크해보고, 그 결과들이 다르다면 ?를 출력하고 결과가 같다면 풀이 가능한 문제로 표현하는..
2024.09.19 -
[백준 JAVA] 2042 : 구간 합 구하기
[백준 2042] 구간 합 구하기 : https://www.acmicpc.net/problem/2042 문제 조건 정리 어떤 N개의 수가 주어져 있다. 그런데 중간에 수의 변경이 빈번히 일어나고 그 중간에 어떤 부분의 합을 구하려 한다. 만약에 1,2,3,4,5 라는 수가 있고, 3번째 수를 6으로 바꾸고 2번째부터 5번째까지 합을 구하라고 한다면 17을 출력하면 되는 것이다. 그리고 그 상태에서 다섯 번째 수를 2로 바꾸고 3번째부터 5번째까지 합을 구하라고 한다면 12가 될 것이다.입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)과 M(1 ≤ M ≤ 10,000), K(1 ≤ K ≤ 10,000) 가 주어진다. M은 수의 변경이 일어나는 횟수이고, K는 구간의 합을 구하는 횟수이다. 둘..
2024.07.03 -
[소프티어 자바] 함께하는 효도
[소프티어] 함께하는 효도 : https://softeer.ai/practice/7727 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai문제 조건 정리 상단 링크를 참고하세요.문제를 풀기 전 친구가 최대 3명이라서 다행이었다.혹시 각 친구가 4개가 아니라 3개 이하를 밟는 게 최선이라면 어쩌나 걱정스러웠다. -> 다행히도 아니었음또 백트래킹의 지옥의 갇혀서 디버깅을 할 준비를 했다.코드 package softeer;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class 함께하는효도 { private static cla..
2024.05.24 -
[프로그래머스 JAVA] 이중우선순위큐
[프로그래머스] 이중우선순위큐 : https://school.programmers.co.kr/learn/courses/30/lessons/42628 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 조건 정리입력 / 출력문제를 풀기 전 deque(덱) 구조보다 최소힙, 최대힙으로 우선순위큐(pq)를 2개 구현해야겠다. 한 개의 pq에서 삭제(dequeue)가 일어나면, 나머지 pq에서도 삭제가 일어나야 하는데 어떻게 구현하지?나머지 pq에서 remove 연산 -> remove 를 위한 힙 탐색 -> 탐색 트리가 아니므로 O(logN) 이 아닌 O(N) 만큼 ..
2024.05.13 -
[프로그래머스 JAVA] 모음사전
[프로그래머스] 모음사전 : https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 조건 정리입력 / 출력 문제를 풀기 전 완전탐색 문제지만 규칙을 찾을 수 있다고 생각함.각 자릿수에는 NULL, "A", "E", "I", "O", "U" 가 들어갈 수 있음 -> 6진수와 비슷하게 취급하고 싶음입력값을 "AAAAA" 와 비교한다면, 논리적으로 쉽게 풀이할 수 있을 것이라고 생각함.아래 표에 따라서, 입력값을 숫자로 변환한 것과 11111 을 비교하는 ..
2024.05.12 -
[프로그래머스 JAVA] 프로세스
[프로그래머스] 프로세스 : https://school.programmers.co.kr/learn/courses/30/lessons/42587 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 조건 정리1. 실행 대기 큐(Queue)에서 대기중인 프로세스 하나를 꺼냅니다.2. 큐에 대기중인 프로세스 중 우선순위가 더 높은 프로세스가 있다면 방금 꺼낸 프로세스를 다시 큐에 넣습니다.3. 만약 그런 프로세스가 없다면 방금 꺼낸 프로세스를 실행합니다. 3.1 한 번 실행한 프로세스는 다시 큐에 넣지 않고 그대로 종료됩니다.입력 / 출력 예를 들어 프로세스 4개 ..
2024.05.01