728x90
https://www.hackerrank.com/challenges/sparse-arrays/problem
Data Structures > Arrays
strings 배열과 queries 배열이 주어지면, queries 배열의 각 원소가 strings 배열에 몇 개 있는지를 카운트해 배열 형태로 리턴한다.
코드
int* matchingStrings(int strings_count, char** strings, int queries_count, char** queries, int* result_count) {
*result_count = queries_count;
int *result = malloc(queries_count * sizeof(int));
for (int i = 0; i < queries_count; i++){
result[i] = 0;
for (int j = 0; j < strings_count; j++){
if (strcmp(queries[i], strings[j]) == 0)
result[i]++;
}
}
return result;
}
설명
결과를 저장할 동적 배열 result를 선언해준다.
queries 배열의 원소 만큼 반복하는 for문을 만들고, 그 안에 strings 배열의 원소 만큼 반복하는 for문을 중첩시킨다.
strcmp 함수를 이용해 queries[i]와 strings[j]를 비교하고, 만약 두 개가 같으면 result[i]를 1 증가시킨다.
result를 리턴한다.
728x90
'C & C++ > HackerRank' 카테고리의 다른 글
[HackerRank] Cycle Detection (1) | 2021.08.04 |
---|---|
[HackerRank] Print the Elements of a Linked List (0) | 2021.08.04 |
[HackerRank] Electronics Shop (0) | 2021.07.29 |
[HackerRank] Arrays - DS (1) | 2021.07.21 |
[HackerRank] CamelCase (1) | 2021.07.21 |