C_C++

백준 28431 번 C언어 풀이

CodingChef 2024. 4. 25. 21:25
반응형

#include <stdio.h>

int main() {
    int socks[5];
    int count[10] = {0}; // 양말 숫자의 개수를 저장할 배열, 초기값은 0으로 설정

    // 양말에 쓰인 숫자 입력 받기
    for (int i = 0; i < 5; i++) {
        scanf("%d", &socks[i]);
        count[socks[i]]++; // 해당 숫자의 개수 증가
    }

    // 남는 양말에 쓰인 숫자 찾기
    int leftover = -1; // 남는 양말에 쓰인 숫자, 초기값은 -1로 설정
    for (int i = 0; i < 10; i++) {
        if (count[i] % 2 == 1) {
            leftover = i; // 개수가 홀수인 숫자가 남는 양말에 쓰인 숫자
            break;
        }
    }

    // 출력
    printf("%d\n", leftover);

    return 0;
}

 

이 문제는 주어진 양말들 중에서 남는 양말에 쓰인 숫자를 찾아내야 되는게 목적이다.

 

socks 배열에 5개의 양말에 쓰인 숫자를 먼저 저장하고, count 배열을 만들어서 해당 숫자가 양말에 몇 번 등장했는지 저장하는 배열이다.

 

그 후 count 배열에 기록을 하고 count 에서 홀수 번 등장한 숫자를 찾으면 그게 짝이 없는 양말에 쓰인 숫자이다.

오늘도 파이팅!

반응형