일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- insertion sort
- 정대건
- Selction Sort
- Anaconda
- Baekjoon
- osaka
- 기숙사 바닥
- 리솜포레스트
- Sort Algorithm
- 동전0
- python
- 헤브나인스파
- 서머싯몸
- 11047번
- 민음사
- 나이순정렬
- 2025
- bubble sort
- 리솜리조트
- 10814번
- 정렬알고리즘
- 인생의베일
- 경로 찾기
- 2858번
- 11403번
- Algorithm
- vscode
- 민음사북클럽
- 레스트리s20
- Beakjoon
- Today
- Total
목록algorithm (26)
JIyeon's life
알고리즘 분류BFSDFS 문제 - https://www.acmicpc.net/problem/1697-문제-수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오.-입력조건-첫 번째 줄에 수빈이가 있는 위치 N과 동생이 있는 위치 K가 주어진다. N과 K는 정수이다.-해결방법-처음에는 qu..
알고리즘 분류BFSDFS 문제 - -문제-방향 없는 그래프가 주어졌을 때, 연결 요소 (Connected Component)의 개수를 구하는 프로그램을 작성하시오.-입력조건-첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주어진다.-해결방법-정점 처음부터 끝까지 탐색한다 -> 방문하지 않은 정점일 경우 Queue.push(방문한것으로 바꿈) -> 그 정점을 pop -> 그 정점에 연결된 정점을 Queue.push -> Queue가 비워질 때 까지 반복 -> Queue가 비워지고 다른 정점을 갈 경우 연결요소 개수..
알고리즘 분류DFSBFS 문제 - -문제-그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다.-입력-첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다.-출력조건-첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수행한 결과를 출력한다. V부터..
알고리즘 분류수학구현 문제 -https://www.acmicpc.net/problem/2839 -문제-상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다.상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다.상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오.-출력조건-상근이가 배달하는 봉..
알고리즘 분류BFSDFS 문제 -https://www.acmicpc.net/problem/2468 -문제-재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다. 이때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다.어떤 지역의 높이 정보는 행과 열의 크기가 각각 N인 2차원 배열 형태로 주어지며 배열의 각 원소는 해당 지점의 높이를 표시하는 자연수이다. 예를 들어, 다음은 N=5인 지역의 높이 정보이다.이제 위와 같은 지역에 많은 비가 내..
알고리즘 분류BFS 문제 - https://www.acmicpc.net/problem/1475 -문제-다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.) -해결방법-처음에 방번호를 단순히 정수형이라고만 생각해서 '000'이런 경우를 생각하지 못해서 입력 받을 때 정수형으로만 입력 받았습니다.ㅠ.ㅠ다시 string으로 입력받고 입력받은 문자열 만큼 하나씩 읽어 숫자로 변환하고 숫자의 갯수를 ..
알고리즘 분류BFS 문제 - https://www.acmicpc.net/problem/2644 -문제-우리 나라는 가족 혹은 친척들 사이의 관계를 촌수라는 단위로 표현하는 독특한 문화를 가지고 있다. 이러한 촌수는 다음과 같은 방식으로 계산된다. 기본적으로 부모와 자식 사이를 1촌으로 정의하고 이로부터 사람들 간의 촌수를 계산한다. 예를 들면 나와 아버지, 아버지와 할아버지는 각각 1촌으로 나와 할아버지는 2촌이 되고, 아버지 형제들과 할아버지는 1촌, 나와 아버지 형제들과는 3촌이 된다.여러 사람들에 대한 부모 자식들 간의 관계가 주어졌을 때, 주어진 두 사람의 촌수를 계산하는 프로그램을 작성하시오. -해결방법-그래프 표현하는 v vector와 탐색했는지 체크 하는 visited vector를 선언한다..
알고리즘 분류브루트 포스 문제 - https://www.acmicpc.net/problem/2309 -문제-왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다.아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다.아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시오. -해결방법-일단 다 해보는 수 밖에 없다!! ->그래서 브루트 포스 알고리즘이다.일단 vector에 삽입한 후 , (첫번째 키,두번째 키), (첫번째 키,세번..
알고리즘 분류BFS 문제 - https://www.acmicpc.net/problem/2178 -문제-N×M크기의 배열로 표현되는 미로가 있다.101111101010101011111011미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오.위의 예에서는 15칸을 지나야 (N, M)의 위치로 이동할 수 있다. 칸을 셀 때에는 시작 위치와 도착 위치도 포함한다. -해결방법-길인 경우(1)에는 동,서,남,북 행렬 위치를 파악하여 모든 가능한 경우의 위치(BFS)를 queue에 저장하여 해결하였습니다. #include #include #in..
자료구조linked list sort linked list sort #include #include #include using namespace std;typedef struct node {int data;node *link;} node;int main(){node *head = NULL;node *tmp, *prev, *p;int n, x;printf("갯수 입력:");scanf("%d", &n);for (int i = 0; i data = x;tmp->link = NULL;if (head == NULL)head = tmp;else {if (x data) {tmp->li..