알고리즘

20/01/10

openingsound 2020. 1. 10. 19:47

아래 문제들은 (알고리즘 트레이닝 1~3) 장 범위

https://www.acmicpc.net/problem/10974

 

 

10974번: 모든 순열

N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

https://www.acmicpc.net/problem/10972

 

10972번: 다음 순열

첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다.

www.acmicpc.net

next_permutaition()함수 알게됨

처음 제출시에는 직접 구현함

https://www.acmicpc.net/problem/10973

 

10973번: 이전 순열

첫째 줄에 입력으로 주어진 순열의 이전에 오는 순열을 출력한다. 만약, 사전순으로 가장 처음에 오는 순열인 경우에는 -1을 출력한다.

www.acmicpc.net

위 함수의 반대인 next_permutaition()사용

https://www.acmicpc.net/problem/10211

 

10211번: Maximum Subarray

크기 N인 정수형 배열 X가 있을 때, X의 부분 배열(X의 연속한 일부분) 중 각 원소의 합이 가장 큰 부분 배열을 찾는 Maximum subarray problem(최대 부분배열 문제)은 컴퓨터 과학에서 매우 잘 알려져 있다. 여러분은 N과 배열 X가 주어졌을 때, X의 maximum subarray의 합을 구하자. 즉, max1 ≤ i ≤  j ≤ N (X[i]+...+X[j])를 구하자.

www.acmicpc.net

시간복잡도 이해를 묻는 문제 O(n)으로 품

https://www.acmicpc.net/problem/11004

 

11004번: K번째 수

수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오.

www.acmicpc.net

병합 정렬 구현후 품 문제에 입력이 많아

ios_base::sync_with_stdio(false);
cin.tie(NULL);

를 작성해야 시간초과가 나지 않음!!

'알고리즘' 카테고리의 다른 글

20/01/12  (0) 2020.01.13
20/01/11  (0) 2020.01.13
20/01/09  (0) 2020.01.10
20/01/08  (0) 2020.01.08
20/01/07  (0) 2020.01.07