BOJ 26

[BOJ] 1450 냅색문제

https://www.acmicpc.net/problem/1450 1450번: 냅색문제 첫째 줄에 N과 C가 주어진다. N은 30보다 작거나 같은 자연수이고, C는 10^9보다 작거나 같은 음이아닌 정수이고. 둘째 줄에 물건의 무게가 주어진다. 무게도 10^9보다 작거나 같은 자연수이다. www.acmicpc.net 문제 제목과 어울리지 않는 풀이 방법을 가진 문제인 것 같다.. ㅋㅋㅋ 냅색이라고 해서, DP를 써야하나 했지만 전혀 아니었고 mitm(meet in the middle) 문제였다. 일단 한번 나이브하게 생각해보자. 먼저, 그냥 모든 경우를 탐색하면 되지 않을까 라는 생각을 하게 된다. 하지만 N이 최대 30이므로 최대 2^30 경우의 수를 탐색해봐야 하고, 이는 대략 10억 정도이기 떄문에..

Problem Solving/BOJ 2021.09.05

[ruby로 PS 하기] BOJ 21300: Bottle Return

acmicpc.net/problem/21300 21300번: Bottle Return In the United States, beverage container deposit laws, or so-called bottle bills, are designed to reduce litter and reclaim bottles, cans and other containers for recycling. Ten states currently have some sort of deposit-refund systems in place for differe www.acmicpc.net 브론즈 5 문제다. 솔직히 이 문제 자체는 너무 쉽다. 그냥 PS를 ruby로 하려고 하다보니 서치를 하게 됐고, 기록삼아 글을 쓰게 되었..

[내공만목] 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] 1105: 팔

www.acmicpc.net/problem/1105 1105번: 팔 첫째 줄에 L과 R이 주어진다. L은 2,000,000,000보다 작거나 같은 자연수이고, R은 L보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 길게 설명할 문제는 아닌듯하다. 1. 두 숫자의 길이가 같은가? 아니라면 8이 아예없는 숫자가 무조건 가능하다. 2. 두 숫자의 길이가 같다면, 앞에서부터 숫자들이 같을 때까지만 탐색하고, 같은 숫자가 8인 경우의 수를 구하면 된다. 이건 아이디어도 쉬운 편이니 코드는 남기지 않겠다.

Problem Solving/BOJ 2020.09.13

[BOJ] tag: minimum enclosing circle

엄청 오랜만에 글을 올리게 되었다. 여러 프로젝트, 업무, 공부를 하다보니 글을 쓰는 걸 되게 뒤로 미루었던 것 같다. 일단, 이번에는 최소 외접원 문제에 대해서 다루어 보려한다. 먼저 관련 문제 목록부터 보겠다. www.acmicpc.net/problem/13708 13708번: 모든 점을 포함하는 원 첫째 줄에 점 N (2 ≤ N ≤ 300)이 주어진다. 둘째 줄부터 N개의 줄에 점의 좌표 x, y가 주어진다. (0 ≤ x, y ≤ 1,000) www.acmicpc.net www.acmicpc.net/problem/2389 2389번: 세상의 중심에서... 첫째 줄에 N(1≤N≤100)이 주어진다. 다음 N개의 줄에는 x, y 좌표가 주어진다. 각각의 좌표는 소수점 여섯째자리까지 주어지며, -600,..

Problem Solving/BOJ 2020.09.13

[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

[잡소리] 다이아 문제는 40번은 틀려야 맞을 수 있는건가?

https://www.acmicpc.net/problem/13705 13705번: Ax+Bsin(x)=C 첫째 줄에 정수 A, B, C가 주어진다. (0 < B ≤ A ≤ 100,000, 0 < C ≤ 100,000) www.acmicpc.net 여러 말이 필요없다. 이 문제는 수치해석 문제인척하는 정밀도 올리기 문제이다. 얼만큼의 실수 자릿수를 가지고, 얼만큼 근사를 할지 정해야 한다. 얼마나 엿같은 종류의 테케가 있는지는 한번 질문 검색 탭이나, 다른 분들이 블로그에 올린 반례를 참고해보세요.. 풀이는 안올리는게 이문제 전통인것 같아서, 풀이는 안하겠습니다. 아무튼 저는 대충 코드를 짜놓고나서 위에 언급한 두 수치를 조절하느라 42번 틀렸습니다. ㅎㅎ

잡소리 2020.04.27

[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