알고리즘/it 취업을 위한 알고리즘 문제풀이
4.나이차이
고줭
2021. 5. 11. 22:33
문제
N(2<=N<=100)명의 나이가 입력됩니다. 이 N명의 사람 중 가장 나이차이가 많이 나는 경우는 몇 살일까요? 최대 나이 차이를 출력하는 프로그램을 작성하세요.
첫 줄에 자연수 N(2<=N<=100)이 입력되고, 그 다음 줄에 N개의 나이가 입력된다.
입력예제
10
13 15 34 23 45 65 33 11 26 42
출력예제
54
위 문제를 보고 바로 정렬을 떠올렸다. 오름차순이던 내림차순이던 정렬후에 첫번째 원소와 마지막원소만 비교하면되니까.
그치만 강의에서는 sort같은 라이브러리는 사용하지 않았다.
#include <iostream>
using namespace std;
int main(){
freopen("input.txt", "rt", stdin);
int n, i, temp, min=2147000000, max=-2147000000;
cin >> n;
for(i=0; i<n; i++){
cin >> temp;
if(temp > max) max = temp;
if(temp < min) min = temp;
}
cout << max-min;
return 0;
}
freopen은 입력을 직접 콘솔창에 적는것이 아니라 따로 파일에서 불러올때 필요하다고 한다.
입력예제가 있는 파일이름은 input.txt이고 나머지는 freopen시 쓰는 옵션들인거 같다. 필요하면 검색..