Algorithm & PS/문제 풀이(19)
-
BOJ 랜덤 마라톤 후기
이번에 Solved.ac이 시즌 4를 맞이하면서 새로운 기능이 생겼습니다. 바로 랜덤 마라톤이라고 일종의 주간 미션입니다.랜덤 마라톤은 말 그대로 일 주일 단위 랜덤디펜스를 한다고 생각하면 됩니다. 총 8 문제가 여러 난이도 분포에 맞추어 주어지며 일 주일 내로 해당 문제들을 푼다면 추가 별조각을 얻을 수 있습니다. Solved.ac 내부적으로 랜덤디펜스를 돌릴 수 있는 기능이 있으면 좋겠다고 생각했는데, 이런 기능이 나타나서 매우 흥미로웠습니다. 이를 통해서 저도 좀 더 PS에 흥미를 다시 가질 수 있고 또 조금 침체되어있는 듯한 분위기도 좀 환기시킬 수 있지 않을까라는 기대도 해봅니다. 아무튼 잡소리는 여기까지 하고 제가 받은 마라톤 코스와 각 문제에 대해서 푼 후기를 남겨보도록 하겠습니다. 제가 ..
2024.06.19 -
[Programmers] 더 맵게
https://school.programmers.co.kr/learn/courses/30/lessons/42626?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 조건을 읽어봅시다. 1. 음식들의 스코빌 지수가 주어집니다. 2. 스코빌 지수가 제일 낮은 두 음식을 섞어서 스코빌 지수가 더 높은 음식 하나를 만들어 낼 수 있습니다. 3. 문제에서는 모든 음식의 스코빌 지수가 K 이상이 될려면 최소 몇 번 음식을 섞어야 하는지를 물어봅니다. 과거 2021년 7월, 제가 입대하기 전에 풀었던 문제입니다. 그냥 필 받아서 다시 풀어보..
2024.03.18 -
[Programmers] 멀리 뛰기
https://school.programmers.co.kr/learn/courses/30/lessons/12914?language=cpp 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 조건을 보면 다음과 같습니다. 1. 효진이는 한 번에 한 칸 혹은 두 칸을 갈 수 있습니다. 2. 그렇다면 효진이가 0번째 칸에서 시작해 n번째 칸까지 간다면 몇 가지의 방법으로 갈 수 있는지를 출력해야 합니다. 이 문제를 읽어보자마자 예전에 백준에서 풀었던 숨바꼭질 시리즈, 1로 만들기 문제들이 생각이 났습니다. 사실 이 문제는 DP로 풀 수 있습니다. 일단 DP[k] ..
2024.03.18 -
[Programmers] 문자열 압축
https://school.programmers.co.kr/learn/courses/30/lessons/60057?language=cpp# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 조건을 해석해보면 다음과 같습니다. 1. 길이가 1000 이내의 문자열이 주어집니다. 2. 우리가 구하고자 하는 건 문자열을 제일 짧게 압축했을 시에 길이를 구하고자 합니다. 문자열을 압축하는 방법은 아래와 같은 절차를 따릅니다. 2-1. 임의의 k를 골라 고정하고, 앞에서부터 k개의 문자씩 자릅니다. k개의 문자 단위를 "구간"이라고 합시다. 2-2. 자른 이후에..
2024.03.18 -
[백준] BOJ 3018 : 캠프파이어
https://www.acmicpc.net/problem/3018 3018번: 캠프파이어 첫째 줄에 MT에 참가한 사람의 수 N이 주어진다. (1 ≤ N ≤ 100) 사람들은 1부터 N까지 번호가 매겨져 있으며, 선영이의 번호는 1이다. 둘째 줄에는 E가 주어진다. (1 ≤ E ≤ 50) 다음 E개 줄에는 그날 www.acmicpc.net 문제의 조건을 요약하면 아래와 같습니다. 1. E일간 캠프파이어가 진행됩니다. 2. 선영이가 캠프파이어 참여하는 날에는 새로운 노래가 하나 만들어집니다. 그 날에는 사람들은 서로 노래들을 공유 안하고 그 노래만 부릅니다. 3. 선영이가 캠프파이어에 참여하지 않는 날에는 캠프파이어 하는 사람들끼리 본인들이 알고있는 노래들을 모두 공유합니다. 4. 문제에서는 선영이를 포함..
2024.01.03 -
[백준] BOJ 30961 : 최솟값, 최댓값
https://www.acmicpc.net/problem/30961 30961번: 최솟값, 최댓값 수열의 힘은 수열의 최솟값과 최댓값을 곱한 값이다. 길이가 $N$인 수열 $A$가 주어질 때, 이 수열에서 길이가 $1$ 이상인 모든 부분수열 각각의 힘을 구하여 모두 XOR한 값을 구하여라. www.acmicpc.net 문제의 조건을 읽어보면 아래와 같습니다. 1. 수열의 힘은 해당 수열의 최댓값 * 최솟값입니다. 2. 길이가 1 이상인 모든 부분 수열의 수열의 힘들을 XOR한 결과를 출력해야 합니다. 3. 여기서 부분 수열이란 수열의 순서를 유지하면서 1 ~ N개의 원소를 골라서 만들 수 있는 수열을 의미합니다. 굳이 연속적일 필요가 없습니다. 사실 문제의 지문에서 그냥 조건들만 적혀져 있기 때문에, 굳..
2023.12.19