byidev.com
2024-01-16 18:01:14

 

두수의 합

#include <stdio.h>

#define MIN -50000
#define MAX 50000

int solution(int num1, int num2) {
    if ((num1>=MIN && num1<=MAX)&&(num2>=MIN && num2<=MAX))
        return num1+num2;
}

 

두수의 차

#include <stdio.h>

int solution(int num1, int num2) {
    if ((num1>=0 && num1<=50000)&&(num2>=0 && num2<=50000))
      return num1 - num2;
}

 

두수의 곱

#include <stdio.h>

int solution(int num1, int num2) {
    if ((num1>=0 && num1<=100)&&(num2>=0 && num2<=100))
        return num1*num2;
    else
        return -1;
}

 

두수의 나눗셈

#include <stdio.h>

#define MIN 0
#define MAX 100

int solution(int num1, int num2) {
    int res = 1000 * (float)num1/num2;
    return res;
}

 

몫 구하기

#include <stdio.h>

int solution(int num1, int num2) {
    if ((num1>0 && num1<=100)&&(num2>0 && num2<=100))
        return num1/num2;
    else
        return -1;
}

 

각도기

#include <stdio.h>

int solution(int angle) {
    int calc = 180-angle;
    
    if (calc > 0)
    {
        if (calc < 90)
            return 3;
        else if (calc == 90)
            return 2;
        else
            return 1;
    }
    return 4;
}

 

개미 군단

#include <stdio.h>

int solution(int hp) {
    int ant1 = hp / 5;
    int ant2 = (hp - ant1 * 5) / 3;
    int ant3 = hp - ant1 * 5 - ant2 * 3;
    
    return ant1 + ant2 + ant3;
}

 

나이 출력

#include <stdio.h>

int solution(int age) {
    if(age>0 && age<=120)
        return 2023-age;
}

 

머쓱이보다 키큰사람

#include <stdio.h>

int solution(int array[], size_t array_len, int height) {
    int i=-1;
    int res=0;
    
    while(++i<=array_len-1)
        if(array[i]>height)
            res++;
    
    return res;
}

 

배열의 평균값

#include <stdio.h>

double solution(int numbers[], size_t numbers_len) {
    int i=-1;
    int res=0;
    
    while(++i <= numbers_len - 1)
        res+=numbers[i];
    
    return (double)res/i;
}

 

순서쌍의 개수

#include <stdio.h>

int solution(int n) {
    int i=0;
    int res=0;
    
    // 순서쌍 = 약수
    while(i++<=n)
        if(!(n%i))
            res++;
    
    return res;
}

 

숨어있는 숫자의 덧셈(1)

#include <stdio.h>

int solution(const char* my_string) {
    int i=-1;
    int res=0;
    
    while(my_string[++i])
        if(my_string[i] >= 48 && my_string[i] <= 57)
            res+=my_string[i]-48;
    
    return res;
}

 

숫자 비교하기

#include <stdio.h>

int solution(int num1, int num2) {
    if ((num1>=0 && num1<=10000)&&(num2>=0 && num2<=10000))
        if(num1 == num2)
            return 1;
    return -1;
}

 

양꼬치

#include <stdio.h>

int solution(int n, int k) {
    int bill = n * 12000 + k * 2000;
    
    if(n/10>=1)
        return bill - (int)(n/10)*2000;
    
    return bill;
}

 

제곱수 판별하기

#include <stdio.h>

int solution(int n) {
    int i = -1;
    
    while(++i <= n/2)
        if(i*i == n)
            return 1;
    
    return 2;
}

 

중복된 숫자개수

#include <stdio.h>

int solution(int array[], size_t array_len, int n) {
    int i=-1;
    int res=0;
    
    while(++i<array_len)
        if(array[i]==n)
            res++;
    
    return res;
}

 

중앙값 구하기

#include <stdio.h>

int solution(int array[], size_t array_len) {
    int i=-1;
    int j=-1;
    int swap=0;
    
    while(++i<array_len)
    {
        while(++j<array_len-1-i)
            if(array[j]>array[j+1])
            {
                swap = array[j];
                array[j] = array[j+1];
                array[j+1] = swap;
            }
        j=-1;
    }
    
    return array[array_len/2];
}

 

짝수의 합

#include <stdio.h>

int solution(int n) {
    int i=0;
    int res=0;
    
    while(++i <= n)
        if(!(i%2))
            res = res + i;
    return res;
}

 

편지

#include <stdio.h>
#include <stdlib.h>

int solution(const char* message) {
    return strlen(message)*2;
}

 

https://github.com/JenSeop/Programmers-ICT/tree/main/Chap.01