코드업(CodeUp) 풀이/C언어 기초 100제

코드업[CodeUp] (C) 1095번 풀이

개발윗미 2021. 8. 23. 15:18

C로 구현한 1095번 이상한 출석 번호 부르기3 문제 풀이입니다.

 

https://codeup.kr/problem.php?id=1095 

 

[기초-1차원배열] 이상한 출석 번호 부르기3(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr


// Case 1
#include <stdio.h>

int main() {
	int n, min=23;
	int input[10001] = {0,};
	scanf("%d", &n);
	for(int i=1; i<=n; i++) {
		scanf("%d", &input[i]);
	}
	for(int i=1; i<=n; i++) {
		if(input[i] < min) {
			min = input[i];
		} 
	}
	printf("%d", min);
}


// Case 2
#include <stdio.h>

int main() {
	int n, temp;
	int input[10001] = {0,};
	scanf("%d", &n);
	for(int i=0; i<n; i++) {
		scanf("%d", &input[i]);
	}
	for(int i=0; i<n; i++) {
		for(int j=0; j<n-(i+1); j++) {
			if(input[j] > input[j+1]) {
				temp = input[j];
				input[j] = input[j+1];
				input[j+1] = temp;
			} 
		}
	}
	printf("%d", input[0]);
}

 

Case 1의 경우, 입력받은 값들을 하나씩 탐색하여 최소값을 구해 출력하는 방식이다.

 

문제에서 입력되는 번호의 범위가 1~23 이고 그 중 최소값을 구해야하기 때문에 변수 min의 초기값을 23으로 지정한다.

 

첫번째 반복문은 단순히 배열에 값을 입력하는 코드이며, 두번째 반복문이 실제로 최소값을 구하는 방법을 적용시키는

 

코드이다. 

 

Case 2의 경우, 입력받은 값들을 정렬시켜 최종적으로 배열의 첫번재 요소를 출력하는 방식이다.

 

두번째 반복문 내의 코드는 오름차순으로 값을 정렬하며, 값을 스와핑해주기 위해 변수 temp를 이용한다.