본문 바로가기

Tech/Algorithm29

백준)11057.오르막수 - 식도출 1년전 이 문제를 풀다가 포기했던 기억이 있다. 그땐 다른 사람들의 풀이를 보아도 왜 그렇게 푸는지 이해를 못했다. 이번에도 역시 바로 풀지는 못했다. 처음에는 브루트포스처럼 수를 올려 일일이 수가 오르막수인지 검사하는 방식으로 풀었다가 Numberformatexception을 만나고 정신을 차렸다. 이 포스팅은 나처럼 수학 잼병인 사람들을 위한 식 도출과정을 중심으로 작성했다. 도출과정 두자리 수에서 세자리 수가 되는 과정을 그려봤다. 0부터 9까지 적어두고, 해당 수가 앞자리에 오는 경우를 적었다. 1로 시작하는 두자리의 오르막 수를 예로 들면 11, 12, 13 ... 19가 있다. 여기서 앞자리에 올 수 있는 수는 0과 1두가지다.==> 001, 012, 013 ... 019 2로 시작하는 두자리.. 2021. 2. 18.
백준)11052.카드구매하기 - 풀이(JAVA) 처음에는 n보다 작은 자연수들을 더해서 n을 만드는 경우를 구해야 한다고 생각했다. 그런 방향으로 풀다가 시간초과가 나버렸고 구글링 끝에 간단한 방법이 있어 정리해본다. 카드 n개를 구매하는 방법은. n개가 들어있는 팩을 구매하거나, 또는 카드 1개가 들어있는 팩을 구매하고 n-1개가 들어있는 팩을 구매한다. 카드 2개가 들어있는 팩을 구매하고 n-2개가 들어있는 팩을 구매한다. . . . 이런식의 방법이 있다. 가장 큰 비용으로 n개를 구매하는 방법까지 도달하기 전에 n보다 작은 카드들을 가장 큰 비용으로 구매하는 법들을 기억(memomemoization)해놓고, 이전에 구했던 값들을 이용해 n개를 가장 큰 비용으로 구매하는 법을 구하는 방식으로 접근해야 하는 문제다. (Dynamic Programmi.. 2020. 10. 26.
백준)1018.체스판 다시 칠하기 - 풀이 및 반례(JAVA) 작년 8월 같은 문제를 풀고 포스팅 한 적이 있다. 마음 같아선 작년의 모든 포스팅을 삭제하고 싶지만, 내 블로그의 취지인 '성장의 기록'을 위배하는 듯 하여 남겨둔다ㅎㅎ 작년 같은 문제 포스팅(별로 도움 안됩니다) dreamingdreamer.tistory.com/73?category=797039 백준)Q.1018_체스판 다시 칠하기(완전탐색(Brute-fore Search)) https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가. dreamingdreamer.tistory.com 작년의 코드와 크게 다른 점은,.. 2020. 10. 16.
19.10.05 넷마블컴퍼니 코딩테스트(4시간/9문제) 보호되어 있는 글 입니다. 2019. 10. 6.
백준)Q.1018_체스판 다시 칠하기(완전탐색(Brute-fore Search)) https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제 지민이는 자신의 저택에서 MN개의 단위 정사각형으로 나누어져 있는 M*N 크기의 보드를 찾았다. 어떤 정사각형은 검은색으로 칠해져 있고, 나머지는 흰색으로 칠해져 있다. 지민이는 이 보드를 잘라서 8*8 크기의 체스판으로 만들려고 한다. 체스판은 검은색과 흰색이 번갈아서 칠해져 있어야 한다. 구체적으로, 각 칸이 검은색과 흰색 중 하나로 색칠되어 있고, 변을 공유하는 두 개의 사각형은.. 2019. 8. 25.
백준)Q.2503_숫자야구(완전탐색(Brute-fore Search)) https://www.acmicpc.net/problem/2503 2503번: 숫자 야구 첫째 줄에는 민혁이가 영수에게 몇 번이나 질문을 했는지를 나타내는 1 이상 100 이하의 자연수 N이 주어진다. 이어지는 N개의 줄에는 각 줄마다 민혁이가 질문한 세 자리 수와 영수가 답한 스트라이크 개수를 나타내는 정수와 볼의 개수를 나타내는 정수, 이렇게 총 세 개의 정수가 빈칸을 사이에 두고 주어진다. www.acmicpc.net 문제 정보문화진흥원 정보 영재 동아리에서 동아리 활동을 하던 영수와 민혁이는 쉬는 시간을 틈타 숫자야구 게임을 하기로 했다. 영수는 1에서 9까지의 서로 다른 숫자 세 개로 구성된 세 자리 수를 마음속으로 생각한다. (예: 324) 민혁이는 1에서 9까지의 서로 다른 숫자 세 개로 구.. 2019. 8. 24.