본문 바로가기

BOJ206

[BOJ]1759번: 암호 만들기 (c++) https://www.acmicpc.net/problem/1759 1759번: 암호 만들기첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다.www.acmicpc.net #include #include #include #include using namespace std;// 최소 모음 1개, 자음 2개 조건에 만족하는지 검사bool check(string pw){ const string consonant = "aeiou"; int c_cnt = 0; for (char c : pw) { if (consonant.find(c) != string::npos) { ++c_.. 2020. 5. 20.
[BOJ]1260번: DFS와 BFS(c++) https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다.www.acmicpc.net  #include #include #include #include using namespace std;// 너비 우선 탐색void bfs(vector>& list, vector& visited, int start){ queue q; q.push(start); visited[start] = .. 2020. 5. 12.
[BOJ]10971번: 외판원 순회 2(c++) https://www.acmicpc.net/problem/10971 10971번: 외판원 순회 2첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 10) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j로 가기 위한 비용을 나타낸다. 항상 순회할 수 있는 경우만 입력으로 주어진다.www.acmicpc.net  #include #include using namespace std;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); const int MAX = 10; int min_cost = 100'000'000; //.. 2020. 5. 11.
[BOJ]10819번: 차이를 최대로(c++) https://www.acmicpc.net/problem/10819 10819번: 차이를 최대로첫째 줄에 N (3 ≤ N ≤ 8)이 주어진다. 둘째 줄에는 배열 A에 들어있는 정수가 주어진다. 배열에 들어있는 정수는 -100보다 크거나 같고, 100보다 작거나 같다.www.acmicpc.net 방법 1: 라이브러리 사용#include #include #include using namespace std;int get_dif_sum(int numbers[], int N){ int t_dif = 0; for (int i = 1; i > N; for (int i = 0; i > nums[i]; } // 오름차순 정렬 sort(nums, nums + N); // 숫자간의 최대 차이값 합계 구하기 int max_d.. 2020. 5. 11.