https://www.hackerrank.com/challenges/countingsort1/problem
Counting Sort 1 | HackerRank
Count the number of times each value appears.
www.hackerrank.com
<문제>

input- 배열 arr의 크기를 입력받고, 크기만큼 정수를 입력받는다.
output- 0~배열의 크기까지 입력받은 원소의 개수를 계산하여 순서대로 출력한다.
<코드>
#include<stdio.h>
int main(){
int size,arr[101];
int i,n;
scanf("%d",&size);
for(i=0;i<101;i++)
arr[i] = 0;
for(i=0;i<size;i++){
scanf("%d",&n);
arr[n]++;
}
for(i=0;i<100;i++){
printf("%d ",arr[i]);
}
return 0;
}
<코드 설명>
main()함수 내에서 간단하게 구현이 가능하여 함수 정의 없이 for반복문을 3번 사용하여 문제를 풀었다.
-첫번째 for 문: arr배열을 0으로 초기화시킨다.
-두번째 for 문: 입력받은 size만큼 배열을 입력받고, 입력받은 원소를 n에 저장하고, arr[n]의 개수를 하나 증가시킨다.
-세번째 for 문: arr배열을 모두 출력한다.
<결과>

'c언어 스터디 > HackerRank' 카테고리의 다른 글
| [HackerRank] Grading Students (0) | 2021.05.22 |
|---|---|
| [HackerRank] Sorting- Counting Sort 2 (0) | 2021.05.22 |
| [HackerRank] Staircase (0) | 2021.05.13 |
| [HackerRank] Birthday Cake Candles (0) | 2021.05.07 |
| [HackerRank] Search- IceCream Parlor (0) | 2021.05.07 |