본문 바로가기

정렬

(4)
[백준 11004] K번째 수 # 문제링크 www.acmicpc.net/problem/11004 11004번: K번째 수 수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 정렬해서 K 번째 있는 수를 구해야 한다. C++의 STL에 sort 를 활용해서 배열을 완전히 정렬한 후 K번째 값을 출력하면 된다. 정렬해서 몇 번째에 있는 수를 알려주는 STL인 nth_element 함수가 있다. nth_element(시작, 찾고자하는 인덱스, 끝) 이렇게 넣어주면 된다. # 제출 코드 // sort 를 이용한 풀이 #include #include using namespace std; long long int a[5000001]..
[백준 10825] 국영수 정렬문제 # 문제링크 www.acmicpc.net/problem/10825 10825번: 국영수 첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 1 www.acmicpc.net STL의 sort 에 compare 함수로 구현했습니다. # 제출 코드 #include #include #include #include using namespace std; struct Student { string name; int kor; int eng; int math; }; bool compare(const Student&a, const Student&b) { if (a..
[백준 11651] 좌표 정렬하기 2 # 문제링크 www.acmicpc.net/problem/11651 11651번: 좌표 정렬하기 2 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net STL의 sort는 첫번째 인자를 기준으로 정렬을 하기 때문에, x, y 를 입력받아 y, x 순으로 vector 에 넣어주면 y를 기준으로 정렬할 수 있다. # 제출 코드 #include #include #include using namespace std; vector v; int main() { int N; cin >> N; int x, ..
[백준 11650] 좌표 정렬하기 C++ STL활용풀이 # 문제링크 www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net STL의 sort 함수를 썼더니, 알아서 vector 의 first 를 기준으로 정렬을 하고, first가 같으면 second를 기준으로 정렬합니다. # 제출 코드 #include #include #include using namespace std; vector v; int main() { int N; cin >> N; int x, y; for ..