백준 21

[내공만목] BOJ 1, 2, 3 더하기 시리즈를 풀고 싶었다.

tony9402라는 분이 문제집을 잘 만들어두셔서, 그대로 첨부한다. www.acmicpc.net/workbook/view/2154 문제집: 1,2,3더하기 시리즈 (tony9402) www.acmicpc.net 문제들은 전반적으로 쉽다. 실버 문제들이니까? 주 문제 상황은 어떤 수 N을 1, 2, 3의 합으로 나타내는 경우의 수를 구하는 것이다. 주로 사용한 아이디어는 DP이다. 차례대로 풀이해보자. www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 그냥 D[i] = i를 1, 2, 3을 이용해 나타낸 경우의 수(순서 고려 O) 라고, 정의한다면 D[i] ..

[BOJ] 9449: Garage

정말 오랜만에 풀이네요.. 문제 소개 solved.ac 브론즈 3티어문제입니다. 문제 링크 https://www.acmicpc.net/problem/9449 9449번: Garage The only line contains four integers: W, H, w, h — dimensions of sandlot and garage in meters. You may assume that 1 ≤ w ≤ W ≤ 30 000 and 1 ≤ h ≤ H ≤ 30 000. www.acmicpc.net 아이디어 브론즈 3티어 문제인만큼 되게 쉬웠습니다. 단지, 조금은 재미있는 아이디어인 것 같아서 남겨봅니다. 일단 이 문제는 최소, 최대를 어떻게 조정해야 할지가 가장 관건입니다. 최소여야하는 것은 배치할 차고의 개수입..

Problem Solving/BOJ 2020.07.17

[내공만목] 대충 어린이날에 푼 골드 문제들 정리

https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 나타내는 M개의 정수가 한 개의 빈 칸을 사이에 두고 주어진다. 각 칸에 들어가는 값은 0 이상 10 이하이다. 배열에서 빙산이 차지하는 칸의 개수, 즉, 1 이상의 정수가 들어가는 칸의 개수는 10,000 개 이하이다. 배열의 첫 번째 행과 열, 마지 www.acmicpc.net 간단한 DFS 문제, 배열 갱신 타이밍만 잘 잡으면 됨. https://www.acmicpc.net/problem/1806 1806번: 부분..

[BOJ] 18868, 18869 :: 멀티버스Ⅰ, 멀티버스Ⅱ

문제 소개 2020.04.11 기준, solved.ac 브론즈 1티어, 실버 1티어 문제입니다. 바로 이전 글인 좌표 압축을 이용하는 문제입니다. 2020/04/11 - [Problem Solving/BOJ] - [BOJ] 18870: 좌표 압축 문제 링크 https://www.acmicpc.net/problem/18868 18868번: 멀티버스 Ⅰ M개의 우주가 있고, 각 우주에는 1부터 N까지 번호가 매겨진 행성이 N개 있다. 행성의 크기를 알고 있을때, 균등한 우주의 쌍이 몇 개인지 구해보려고 한다. 구성이 같은데 순서만 다른 우주의 쌍은 한 번만 센다. 두 우주 A와 B가 있고, 우주 A에 있는 행성의 크기는 A1, A2, ..., AN, 우주 B에 있는 행성의 크기는 B1, B2, ..., BN..

Problem Solving/BOJ 2020.04.11

[BOJ] 18870: 좌표 압축

문제 소개 2020.04.11 기준, solved.ac 실버 2티어 문제입니다. 문제 제목 그대로 좌표 압축을 하는 문제입니다. 좌표 압축은 사실 map 혹은 dictionary (언어에 따라 다름) 등을 알면 쉬운 문제입니다. 문제 링크 https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌표 압축을 적용한 결과 X'1, X'2, ..., X'N를 출력해보자. www.acmicpc.net 아이디어 이 문제는 정말 친절하게도, 제..

Problem Solving/BOJ 2020.04.11

[BOJ] 9372: 상근이의 여행

문제 소개 2020.03.30 기준, solved.ac 실버 3티어 문제입니다. 솔직히 최근에 푼 문제 중에 제일 어이가 없었던 문제입니다. 주의, 이 문제는 아이디어를 보면 스포가 됩니다. 문제 링크 https://www.acmicpc.net/problem/9372 9372번: 상근이의 여행 문제 상근이는 겨울방학을 맞아 N개국을 여행하면서 자아를 찾기로 마음먹었다. 하지만 상근이는 새로운 비행기를 무서워하기 때문에, 최대한 적은 종류의 비행기를 타고 국가들을 이동하려고 한다. 이번 방학 동안의 비행 스케줄이 주어졌을 때, 상근이가 가장 적은 종류의 비행기를 타고 모든 도시들을 여행할 수 있도록 도와주자. 상근이가 한 국가에서 다른 국가로 이동할 때 다른 국가를 거쳐 가도(심지어 이미 방문한 국가라도)..

Problem Solving/BOJ 2020.03.30

[잡소리] 내가 마크로 백준 문제를 제출하다니

제목 그대로 마인크래프트 맵을 백준에 제출하였다. 논리회로 관련 문제이니 한번 풀어보는 것을 추천한다. 구데기컵 진행중일 때 맞추면 solve.ac 에서 칭호?를 준다고 되어있으니 어서 도전 ㄱㄱ https://www.acmicpc.net/contest/problem/511/6 🌳번: A+B (MC) 입력은 레버를, 출력은 레드스톤 램프를 통해 이루어집니다. 이들 블록을 포함하여, 모든 블록은 (0, 0, 0)과 (511, 255, 511)를 꼭짓점으로 하는 직육면체 안에 있어야 합니다. 여러분은 월드의 r.0.0.mca를 제출합니다. 월드 내 모든 블록은 다음 중 하나여야 합니다: bedrock, stone, sandstone, redstone_wire, redstone_wall_torch, redst..

잡소리 2020.03.29

[BOJ] 2981: 검문

문제 소개 2020.03.27 기준, solved.ac 실버 1티어 문제입니다. 문제 번호가 낮고 예전에 만들어진 문제여서 많은 분들이 풀이를 올리신 것 같지만 끄적여봅니다. 먼저, 문제를 풀 수 있는 아이디어부터 설명하고 코드를 설명하겠습니다. 문제 링크 https://www.acmicpc.net/problem/2981 2981번: 검문 문제 트럭을 타고 이동하던 상근이는 경찰의 검문을 받게 되었다. 경찰은 상근이가 운반하던 화물을 하나하나 모두 확인할 것이기 때문에, 검문하는데 엄청나게 오랜 시간이 걸린다. 상근이는 시간을 때우기 위해서 수학 게임을 하기로 했다. 먼저 근처에 보이는 숫자 N개를 종이에 적는다. 그 다음, 종이에 적은 수를 M으로 나누었을 때, 나머지가 모두 같게 되는 M을 모두 찾으..

Problem Solving/BOJ 2020.03.27

[BOJ] 17404: RGB거리 2

문제 소개 오랜만에 문제 풀이입니다. 2020.03.27 기준, solved.ac 골드 4티어 문제입니다. 먼저, 문제를 풀 수 있는 아이디어부터 설명하고 코드를 설명하겠습니다. 문제 링크 https://www.acmicpc.net/problem/17404 17404번: RGB거리 2 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 같은 자연수이다. www.acmicpc.net 아이디어 처음에는 어떻게 접근할까 잘 생각이 안나서 조금 다른분들 풀이를 찾아봤습니다. 근데, 찾아보다가 그냥 3차원인듯 3차원 아닌 DP로 풀면 되잖아! 하면서 ..

Problem Solving/BOJ 2020.03.27