백준 2562번
https://www.acmicpc.net/problem/2562
2562번: 최댓값
9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어
www.acmicpc.net
1. 문제
9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
2. 내가 작성한 알고리즘
#include <stdio.h>
int main()
{
int array[9];
int max=0;
for(int i=0;i<9;i++){
scanf("%d",&array[i]);
}
for(int i=0;i<9;i++){
if(array[i]>max){
max=array[i];
}
}
printf("%d\n",max);
for(int i=0;i<=9;i++){
if(array[i]==max) {
printf("%d",i+1);
break;
}
}
return 0;
}
3. 참고하여 수정한 알고리즘
#include <stdio.h>
int main()
{
int array[9];
int max=0;
int count=0;
for(int i=0;i<9;i++){
scanf("%d",&array[i]);
if(array[i]>max){
max=array[i];
count+=1;
}
}
printf("%d\n",max);
printf("%d",count);
return 0;
}
4. 이번 알고리즘을 통해 배운 점
정렬하기 위해서는 저장하고 옮길 하나의 변수가 필요하다. 최댓값, 최솟값을 구하는 것 또한 마찬가지이다 최댓값을 구할때는 가장 작은 값으로 선언하여 반복문과 조건문을 통해 값을 구한다.
'C > 백준 알고리즘 (c언어)' 카테고리의 다른 글
함수 practice 01_셀프 넘버 (0) | 2021.07.01 |
---|---|
1차원배열 practice 03_OX퀴즈 (0) | 2021.06.30 |
1차원배열 practice 01_평균은 넘겠지 (0) | 2021.06.29 |
for문 practice 02_ A+B-4 (0) | 2021.06.28 |
while문 practice 01_더하기 싸이클 (0) | 2021.06.28 |