백준 사이트 URL : https://www.acmicpc.net/problem/1707 문제 분석입력 : 테스트크기 T, 정점의 개수 V, 간선의 개수 E, E개의 연결정보출력 : 그래프가 이분 그래프를 이루는지에 대한 여부제한 : 시간제한 2초, 메모리제한 128MB 아이디어 : 이분그래프가 맞는지 확인해주면된다. : http://sanghoon9939.tistory.com/33 에서 확인 가능하다. : 간단하게 visit 처리를 색으로 해준후 이미 visit된 정점을 확인할때 자신과 같은 색이면, NO처리를 해준다. 소스코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354..
▣Bipartite Graph Distinction(이분 그래프 판별) : 이분그래프의 여부를 판별하는 알고리즘-> 이분 그래프 정의: 그래프의 모든 정점을 2그룹으로 나눠지고 서로 다른 그룹의 정점이 간선으로 연결되어져 있는 그래프를 이분 그래프라고 한다. : 다음 알고리즘은 위 그래프가 2분그래프인지를 확인하는 알고리즘이다. : 그림에서 볼 수 있는 것과 같이 하나의 간선에 연결된 정점은 다른 색을 가지고 있는 것을 볼 수가 있다. : 즉, BFS 혹은 DFS를 이용하여 탐색을 하며 이미 visit된 정점을 확인할 당시 자기와 같은 색을 갖고 있다면, 이분 그래프가 아님을 확인 할 수가 있다.-DFS기준-: 이런식으로 DFS의 탐색순서를 따라가며, visit 처리를 색으로 구분하게 된다. : 이미 v..
백준 사이트 URL : https://www.acmicpc.net/problem/2696 문제 분석입력 : 테스트크기 T, 수열의 크기 M, 그리고 M길이의 수열의 값출력 : 수열에서 중앙값의 개수를 구한다(단, 중앙값은 홀수개를 기준으로 생성된다), 생성되는 중앙값들을 출력한다.제한 : 시간제한 1초, 메모리제한 128MB 아이디어 : 단순히 배열을 통행 입력받고 매 홀수 번째 마다 정렬 후 가운데 인덱스를 출력하는 방법도 있다. 하지만, 그 경우 시간초과의 위험이 있다. : 2개의 Heap인 Max_Heap과 Min_Heap을 통해 중앙값과 데이터의 입력을 효육적으로 만들 수 있다. 즉, 새로운 값을 넣고 난 후의 두 Heap의 사이즈가 다를 시 Max_Heap의 top()값이 중앙값이 된다. 소스코..
▣ Software & Soft Engineering ▶software 정의 : instruction - 프로그램 실행 시 요구된 function, performance 그리고 feature를 제공하는 명령어. : data structures - 프로그램이 data를 적절하게 조작할 수 있게 하는 자료구조 : documentation - 프로그램의 operation과 use를 설명하는 documentation. ▶software 특징 : developed 되거나 engineered 된것으로 고전적관점에서의 제조된 것이 아니다. : 하드웨어와 다르게 'wear out'없다. 즉, 마모와 같은 손실이 없다. [하드웨어] [소프트웨어] : 산업들이 component-based 방향으로 움직이는 반면, 소프트웨..
백준 사이트 URL : https://www.acmicpc.net/problem/2491 문제분석입력 : 길이 n과 최대 길이와 n개의 정수출력 : 연속된 증가 혹은 감소 수열의 가장 긴 길이를 출력한다. 아이디어1. 감소와 증가 수열의 기록을 저장할 변수를 통해 한번의 탐색으로 해결한다.2. 같은 경우는 두 변수를 증가 시킨다. 그 외는 경우에 따라 증가의 길이, 감소의 길이를 각각 증가 시킨다.3. 길이를 비교하여 최대 길이를 소스 코드123456789101112131415161718192021222324252627282930313233#include int main() { int n, res = 1, pre = 0, num; scanf("%d", &n); int len_1 = 1, len_2 = 1..