반응형
안녕하세요. BlockDMask 입니다.
오늘의 문제 풀어보겠습니다.
170905 문제 빼먹음 -> 171008 완료
0. 제목
백준 2562 최대값
BOJ 2562 최대값
1. 문제 설명
9개의 서로 다른 자연수가 주어질 때,
이들 중 최대값을 찾고 그 최대값이 몇 번째 수인지 구하는 프로그램을 만들면 됩니다.
예를들어, 서로 다른 9개의 자연수
3, 29, 30, 12, 55, 80, 9, 92, 60
이 주어지면,
이들 중 최대값은 92 이고
이 값은 8번째 수 입니다.
주어지는 자연수의 크기는 100보다 작습니다.
2. 풀이 과정
배열에 각 수를 저장한 후
선형탐색을 이용하여 배열 전체를 탐색하는 방법으로,
최대값을 구하는 방식으로 풀면 됩니다.
3. 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | //https://www.acmicpc.net/problem/2562 //BOJ_2562_최대값 //선형으로 전체 탐색을 하면서 max를 구하면 됩니다 #include<iostream> #define N 9 using namespace std; int arr[N]; //배열의 최대값 index 를 반환하는 함수 int getMaxIdx(){ int max = 0; int idx = 0; for(int i=0; i<N; i++){ if(arr[i] >= max){ max = arr[i]; idx = i; } } return idx; } int main(void){ //입력 for(int i=0; i<N; i++){ cin >> arr[i]; } int idx = getMaxIdx(); //출력 cout << arr[idx] << endl; cout << idx+1; return 0; } | cs |
4. 인증
문제 출처 - https://www.acmicpc.net/problem/2562
감사합니다. 하트 꾹꾹꾹 부탁드립니다.
반응형
'<알고리즘 문제풀이&연습> > [C++] 백준, 프로그래머스 등등' 카테고리의 다른 글
[백준 2667] 단지번호붙이기(BFS-너비우선탐색) (2) | 2017.10.15 |
---|---|
[백준 2667] 단지번호붙이기(DFS-깊이우선탐색) (7) | 2017.10.12 |
[백준 1764] 듣보잡 (0) | 2017.10.10 |
[백준 1920] 수 찾기 (이진탐색) (0) | 2017.10.08 |
[백준 2309] 일곱 난쟁이 (브루트 포스) (0) | 2017.10.06 |
[백준 4673] 셀프 넘버 (2) | 2017.10.04 |
[백준 2941] 크로아티아 알파벳 (0) | 2017.10.04 |
[백준 5622] 다이얼 (0) | 2017.10.03 |