문제
정수 배열 arr가 주어집니다. arr의 각 원소에 대해 값이 50보다 크거나 같은 짝수라면 2로 나누고, 50보다 작은 홀수라면 2를 곱합니다. 그 결과인 정수 배열을 return 하는 solution 함수를 완성해 주세요.
솔루션
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
// arr_len은 배열 arr의 길이입니다.
int* solution(int arr[], size_t arr_len) {
// return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요.
int* answer = (int*)malloc(arr_len*sizeof(int));
for(int i = 0; i < arr_len; i++)
{
if((arr[i]>50 || arr[i] == 50) && arr[i]%2==0)
answer[i] = arr[i]/2;
else if((arr[i]%2 != 0)&&arr[i] < 50)
answer[i] = arr[i]*2;
else
answer[i] = arr[i];
}
return answer;
}
https://school.programmers.co.kr/learn/courses/30/lessons/181882
'프로그래머스코딩테스트연습풀이 > C언어' 카테고리의 다른 글
[프로그래머스/C언어] 원하는 문자열 찾기 (0) | 2023.08.01 |
---|---|
[프로그래머스/C언어] 길이에 따른 연산 (0) | 2023.08.01 |
[프로그래머스/C언어] n보다 커질 때까지 더하기 (0) | 2023.08.01 |
[프로그래머스/C언어] 홀수 vs 짝수 (0) | 2023.08.01 |
[프로그래머스/C언어] n개의 간격의 원소들 (0) | 2023.08.01 |