-
BOJ 1759 : 암호 만들기백준 문제풀이/BRUTE FORCE 2020. 1. 29. 15:57
문제 바로 어제 최백준 조교가 방 열쇠를 주머니에 넣은 채 깜빡하고 서울로 가 버리는 황당한 상황에 직면한 조교들은, 702호에 새로운 보안 시스템을 설치하기로 하였다. 이 보안 시스템은 열쇠가 아닌 암호로 동작하게 되어 있는 시스템이다. 암호는 서로 다른 L개의 알파벳 소문자들로 구성되며 최소 한 개의 모음과 최소 두 개의 자음으로 구성되어 있다고 알려져 있다. 또한 정렬된 문자열을 선호하는 조교들의 성향으로 미루어 보아 암호를 이루는 알파벳이 암호에서 증가하는 순서로 배열되었을 것이라고 추측된다. 즉, abc는 가능성이 있는 암호이지만 bac는 그렇지 않다. 새 보안 시스템에서 조교들이 암호로 사용했을 법한 문자의 종류는 C가지가 있다고 한다. 이 알파벳을 입수한 민식, 영식 형제는 조교들의 방에 침..
-
BOJ 1525 : 퍼즐백준 문제풀이/GRAPH 2020. 1. 24. 01:16
문제 3×3 표에 다음과 같이 수가 채워져 있다. 오른쪽 아래 가장 끝 칸은 비어 있는 칸이다. 1 2 3 4 5 6 7 8 어떤 수와 인접해 있는 네 개의 칸 중에 하나가 비어 있으면, 수를 그 칸으로 이동시킬 수가 있다. 물론 표 바깥으로 나가는 경우는 불가능하다. 우리의 목표는 초기 상태가 주어졌을 때, 최소의 이동으로 위와 같은 정리된 상태를 만드는 것이다. 다음의 예를 보자. 1 3 4 2 5 7 8 6 1 2 3 4 5 7 8 6 1 2 3 4 5 7 8 6 1 2 3 4 5 6 7 8 가장 윗 상태에서 세 번의 이동을 통해 정리된 상태를 만들 수 있다. 이와 같이 최소 이동 횟수를 구하는 프로그램을 작성하시오. 입력 세 줄에 걸쳐서 표에 채워져 있는 아홉 개의 수가 주어진다. 한 줄에 세 개..
-
BOJ 2293 : 동전 1백준 문제풀이/Dynamic Programming 2020. 1. 23. 16:56
문제 n가지 종류의 동전이 있다. 각각의 동전이 나타내는 가치는 다르다. 이 동전을 적당히 사용해서, 그 가치의 합이 k원이 되도록 하고 싶다. 그 경우의 수를 구하시오. 각각의 동전은 몇 개라도 사용할 수 있다. 사용한 동전의 구성이 같은데, 순서만 다른 것은 같은 경우이다. 입력 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 경우의 수를 출력한다. 경우의 수는 2^31보다 작다. 풀이 일반적으로 도출되는 점화식은 다음과 같다. d[i] = d[i-1] + d[i-2] + d[i-5] 하지만 이 점화식은 중복되는 동전의 조합을 처리하지 못한..
-
BOJ 10942 : 팰린드롬?백준 문제풀이/Dynamic Programming 2020. 1. 23. 15:46
문제 명우는 홍준이와 함께 팰린드롬 놀이를 해보려고 한다. 먼저, 홍준이는 자연수 N개를 칠판에 적는다. 그 다음, 명우에게 질문을 총 M번 한다. 각 질문은 두 정수 S와 E로 나타낼 수 있으며, S번째 수부터 E번째 까지 수가 팰린드롬을 이루는지를 물어보며, 명우는 각 질문에 대해 팰린드롬이다 또는 아니다를 말해야 한다. 예를 들어, 홍준이가 칠판에 적은 수가 1, 2, 1, 3, 1, 2, 1라고 하자. S = 1, E = 3인 경우 1, 2, 1은 팰린드롬이다. S = 2, E = 5인 경우 2, 1, 3, 1은 팰린드롬이 아니다. S = 3, E = 3인 경우 1은 팰린드롬이다. S = 5, E = 7인 경우 1, 2, 1은 팰린드롬이다. 자연수 N개와 질문 M개가 모두 주어졌을 때, 명우의 대..
-
[C++] vector<int> a(3) 와 vector<int> a[3] 의 차이는 ?프로그래밍/C++ 2020. 1. 17. 01:45
vector a(3) 와 vector a[3]의 차이는 ? 1. vector a(3) 는 0으로 초기화되어있는 사이즈 3의 a 라는 벡터를 만드는 것을 의미합니다. 아주 기본적인 형태의 선언 방식이고 우리가 알고 있는 모든 방식의 접근이 가능합니다. vector a(3); //0,0,0 a.push_back(1); //0,0,0,1 a.push_back(2); //0,0,0,1,2 a.pop_back(); //0,0,0,1 cout
-
BOJ 2529 : 부등호백준 문제풀이/BRUTE FORCE 2020. 1. 12. 00:28
문제 두 종류의 부등호 기호 ‘’가 k개 나열된 순서열 A가 있다. 우리는 이 부등호 기호 앞뒤에 서로 다른 한 자릿수 숫자를 넣어서 모든 부등호 관계를 만족시키려고 한다. 예를 들어, 제시된 부등호 순서열 A가 다음과 같다고 하자. A => 부등호 기호 앞뒤에 넣을 수 있는 숫자는 0부터 9까지의 정수이며 선택된 숫자는 모두 달라야 한다. 아래는 부등호 순서열 A를 만족시키는 한 예이다. 3 1 7 0 이 상황에서 부등호 기호를 제거한 뒤, 숫자를 모두 붙이면 하나의 수를 만들 수 있는데 이 수를 주어진 부등호 관계를 만족시키는 정수라고 한다. 그런데 주어진 부등호 관계를 만족하는 정수는 하나 이상 존재한다. 예를 들..
-
BOJ 1003 : 피보나치 함수백준 문제풀이/Dynamic Programming 2020. 1. 4. 23:03
문제 다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다. int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fibonacci(n‐2); } } fibonacci(3)을 호출하면 다음과 같은 일이 일어난다. fibonacci(3)은 fibonacci(2)와 fibonacci(1) (첫 번째 호출)을 호출한다. fibonacci(2)는 fibonacci(1) (두 번째 호출)과 fibonacci(0)을 호출한다. 두 번째 호출한 fibonacci(1)은 1을 출력하고 1을 리턴한다. fibonacci(0)은 ..
-
[티스토리] 게시글에 애드센스 광고 삽입하기Tip 2020. 1. 3. 14:35
Summary 1. 반응형 광고와 고정형 광고의 차이 2. 자동 광고 설정 방법 3. 단위 광고 만들기 반응형 광고와 고정형 광고의 차이 ※우선 반응형 광고를 추천합니다. 고정형 광고 : PC에서만 보이는 크기가 고정돼있는 광고 모바일 광고 : 모바일에서만 보이는 크기가 고정되있는 광고 반응형 광고 : PC, 모바일, 태블릿에 맞춤으로 나타나는 광고 자동 광고 설정 방법 1. 블로그 관리 홈으로 들어가 좌측 사이드바에 플러그인을 클릭합니다. 2. 주황색 박스 안에 있는 3가지 배너가 자동 광고를 도와줍니다. PC 고정형 광고와 모바일 광고를 각각 설정한다. 반응형 광고만 설정한다. 3. 답은 2번으로 정해져 있으니 반응형 광고 설정을 누릅니다. 그리고 주황색 박스 안에 자신이 원하는 종류의 반응형 광고 ..