배열 a와 b에 각각 세 개의 정수가 들어온다. 순서에 맞게 a와 b의 원소값을 비교해 큰 쪽이 1점을 가져간다.
int* compareTriplets(int a_count, int* a, int b_count, int* b, int* result_count) {
*result_count = 2;
int i;
int *score = malloc(2*sizeof(int));
score[0] = 0, score[1] = 0;
for(i=0; i<3; i++){
if(a[i] > b[i]){
score[0]++;
}else if(a[i] < b[i]){
score[1]++;
}
}
return score;
}
배열을 반환해야 하므로 점수를 저장한 score를 할당받았다.
a의 배열 값과 b의 배열 값을 각각 비교해 a 값이 크면 score[0]의 점수를 올리고 b 값이 크면 score[1]의 점수를 올린다.
배열 score를 반환해준다.
그냥 배열은 왜 반환이 안되는지 생각해봤는데 static을 붙여줘야 한다.
int* compareTriplets(int a_count, int* a, int b_count, int* b, int* result_count) {
*result_count = 2;
int i;
static int score[2] = {0};
for(i=0; i<3; i++){
if(a[i] > b[i]){
score[0]++;
}else if(a[i] < b[i]){
score[1]++;
}
}
return score;
}
'HackerRank > Algorithms' 카테고리의 다른 글
[HackerRank] Search > Ice Cream Parlor (0) | 2021.08.26 |
---|---|
[HackerRank] Warmup > Diagonal Difference (0) | 2021.08.14 |
[HackerRank] Implementation > Find Digits (0) | 2021.08.08 |
[HackerRank] Implementation > Drawing Book (0) | 2021.08.08 |
[HackerRank C] Implementation : Angry Professor (0) | 2021.08.01 |