분류 전체보기 139

[백준 15654, c++] N과 M(5)

문제 번호 15654(https://www.acmicpc.net/problem/15654) 문제 및 입/출력 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 입력 첫째 줄에 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 둘째 줄에 N개의 수가 주어진다. 입력으로 주어지는 수는 10,000보다 작거나 같은 자연수이다. 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 입력1 3 1 4 5 2 예제 출력1..

백준/DFS 2019.08.22

[백준 15652, c++] N과 M(4)

문제 번호 15652(https://www.acmicpc.net/problem/15652) 문제 및 입/출력 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 고른 수열은 비내림차순이어야 한다. 길이가 K인 수열 A가 A1 ≤ A2 ≤ ... ≤ AK-1 ≤ AK를 만족하면, 비내림차순이라고 한다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다..

백준/DFS 2019.08.21

[백준 15651, c++] N과 M(3)

문제 번호 15651(https://www.acmicpc.net/problem/15651) 문제 및 입/출력 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 7) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 입력1 3 1 예제 출력1 1 2 3 예제 입력2 4 2 예제 출력2 1 1 1 2 1 3 1 4 2 1 2 2 2 3 2 4 3 1..

백준/DFS 2019.08.21

[백준 15650, c++] N과 M(2)

문제 번호 15650(https://www.acmicpc.net/problem/15650) 문제 및 입/출력 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 고른 수열은 오름차순이어야 한다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 입력1 3 1 예제 출력1 1 2 3 예제 입력2 4 2 예제 출력2 1 2 1 3 1 4 2 3 2 4 3 4 예제 입력..

백준/DFS 2019.08.21

[백준 15649, c++] N과 M(1)

문제 번호 15649(https://www.acmicpc.net/problem/15649) 문제 및 입/출력 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 예제 입력1 3 1 예제 출력1 1 2 3 예제 입력2 4 2 예제 출력2 1 2 1 3 1 4 2 1 2 3 2 4 3 1 3 2 3 4 4 1 4 2 4 3 ..

백준/DFS 2019.08.21

[백준 11723, c++] 집합

문제 번호 11723(https://www.acmicpc.net/problem/11723) 문제 및 입/출력 비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오. add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. check x: S에 x가 있으면 1을, 없으면 0을 출력한다. toggle x: S에 x가 있으면 x를 제거하고, 없으면 x를 추가한다. (1 ≤ x ≤ 20) all: S를 {1, 2, ..., 20} 으로 바꾼다. empty: S를 공집합으로 바꾼다. 입력 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤..

[백준 14501, c++] 퇴사 DFS

문제 번호 14501(https://www.acmicpc.net/problem/14501) 문제 및 입/출력 오늘부터 N+1일째 되는 날 퇴사를 하기 위해서, 남은 N일 동안 최대한 많은 상담을 하려고 한다. 백준이는 비서에게 최대한 많은 상담을 잡으라고 부탁을 했고, 비서는 하루에 하나씩 서로 다른 사람의 상담을 잡아놓았다. 각각의 상담은 상담을 완료하는데 걸리는 기간 Ti와 상담을 했을 때 받을 수 있는 금액 Pi로 이루어져 있다. N = 7인 경우에 다음과 같은 상담 일정표를 보자. 1일에 잡혀있는 상담은 총 3일이 걸리며, 상담했을 때 받을 수 있는 금액은 10이다. 5일에 잡혀있는 상담은 총 2일이 걸리며, 받을 수 있는 금액은 15이다. 상담을 하는데 필요한 기간은 1일보다 클 수 있기 때문에..

백준/DFS 2019.08.19

[백준 1182, c++] 부분집합의 합

문제 번호 1182(https://www.acmicpc.net/problem/1182) 문제 및 입/출력 N개의 정수로 이루어진 수열이 있을 때, 길이가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20, |S| ≤ 1,000,000) 둘째 줄에 N개의 정수가 빈 칸을 사이에 두고 주어진다. 주어지는 정수의 절댓값은 100,000을 넘지 않는다. 출력 첫째 줄에 합이 S가 되는 부분수열의 개수를 출력한다. 예제 입력 5 0 -7 -3 -2 5 8 예제 출력 1 문제 풀이 DFS를 이용해서 완전탐색을 진행하여 답을 쉽게 구할 수 있다. 아래는 예제풀이를 직접 적..

백준/DFS 2019.08.17

[백준 2309, c++] 일곱난쟁이

문제 번호 2309(https://www.acmicpc.net/problem/2309) 문제 및 입/출력 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다. 아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시오. 입력 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가..

프로세싱을 이용한 시리얼 데이터 실시간 그래프화

두개의 데이터를 그래프화한 모습 시리얼 데이터를 실시간으로 그래프화 하려면 1> 프로세싱을 이용한 방법 2> 매트랩을 이용한 방법 3> 랩뷰를 이용한 방법 등 많은데, 저는 프로세싱을 이용하여 데이터를 그래프화 하였습니다. 셋 중에 제일 금방 배울 수 있다고 느꼈고, 실제로 해보니 자료도 많아서 금방 할 수 있었습니다. 하지만 제가 아래 올려드린 자료는 설명이 부족합니다. 제가 만들어놓은 양식을 그대로 쓰신다면 그냥 사용하시면 되지만, 다른 양식을 원하신다면 조금 공부를 하셔야합니다. 구글에 "processing real time graph" 라고 검색하시면 여러 자료를 찾을 수 있습니다. 아래 자료는 혹시나 저처럼 시리얼 데이터를 실시간으로 그래프화 하고 싶은 사람들에게 조금이나마 도움이 되고자 올립니..