-
백준 11004번 : k번째 수 (C 언어)c c++ 언어 공부 2023. 6. 6. 23:52
https://www.acmicpc.net/problem/11004
11004번: K번째 수
수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오.
www.acmicpc.net
Code:
12345678910111213141516171819202122#include <stdio.h>#include <stdlib.h>int comapre(const void* a, const void* b){if (*(int*)a > *(int*)b) return 1;else if (*(int*)a > *(int*)b) return -1;else return 0;}int main(){int n, k;scanf("%d %d", &n, &k);int arr[5000001] = { 0, };for (int i = 0; i < n; i++){scanf("%d", &arr[i]);}qsort(arr, n, sizeof(int), comapre);printf("%d", arr[k - 1]);}cs 문제풀이:
<stdlib.h>라이브러리에 들어있는 qsort를 이용해서 오름차순으로 정렬을 해준 후 k번째의 수를 출력해 주었다. 배열이 0부터 시작이므로 k-1번째를 확인해보면 된다.
'c c++ 언어 공부' 카테고리의 다른 글
백준 14940번 : 쉬운 최단거리(C++ 언어) (0) 2023.06.07 백준 10825번 : 국영수 (C 언어) (0) 2023.06.07 백준 2210번 : 숫자판 점프 (C 언어) (0) 2023.06.05 백준 10448번 : 유레카 이론(C 언어) (0) 2023.06.05 백준 1834번 : 나머지와 몫이 같은 수 (C 언어) (0) 2023.06.05