로그인가입

최저 수위와 최고 수위

100점케이스 15출제 dongbinna
10월 30일에 올라온 문제입니다.
푼 사람 1명시도한 사람 1명제출 1건푼 분들은 평균 1.0번 만에

문제

한 해양 관측소는 바다에 떠 있는 부표로 수면의 높이를 기록한다. 기록은 기준선을 0으로 두고 밀리미터 단위로 적는다. 수면이 기준선보다 높으면 그 차이만큼 양수로 적고, 기준선보다 낮으면 그 차이만큼 음수로 적는다. 수면이 기준선과 같은 높이라면 0으로 적는다.

관측소는 지난 조사 기간에 수면의 높이를 N번 기록했다. 기록은 측정한 순서대로 1번부터 N번까지 번호를 붙여 보관한다. 조사 보고서의 맨 앞에는 N번의 기록 가운데 가장 낮은 값과 가장 높은 값을 나란히 적어야 한다. 이 두 값이 조사 기간에 수면이 오르내린 폭을 한눈에 보여 주기 때문이다.

N번의 기록이 주어졌을 때, 가장 낮은 값과 가장 높은 값을 차례대로 출력하는 프로그램을 작성하여라.

예를 들어 N=5번의 기록이 다음의 표와 같다고 해보자. 1번과 5번 기록은 수면이 기준선보다 낮았던 때이고, 나머지 세 기록은 기준선보다 높았던 때다.

기록 번호12345
수면 높이-29079096108279372296405-940679

1번 기록부터 차례대로 훑으면서 지금까지 본 가운데 가장 낮은 값과 가장 높은 값을 갈아 치우는 식으로 따라가 보면 다음과 같다.

지금 보는 기록12345
지금까지 가장 낮은 값-290790-290790-290790-290790-940679
지금까지 가장 높은 값-29079096108279372296405296405

5번 기록까지 모두 훑고 나면 가장 낮은 값은 5번 기록의 -940679이고, 가장 높은 값은 4번 기록의 296405다.

항목기록 번호값
가장 낮은 값5-940679
가장 높은 값4296405

따라서 보고서의 맨 앞에는 -940679와 296405를 차례대로 적는다. 한편 N=1인 경우에는 기록이 하나뿐이므로 가장 낮은 값과 가장 높은 값이 같은 값이 된다.

입출력 예시

예시 1

입력

5
-290790 96108 279372 296405 -940679

출력

-940679 296405

예시 2

입력

1
-685155

출력

-685155 -685155

예시 3

입력

3
855384 239726 901628

출력

239726 901628

입력 조건

  • 가장 먼저 기록의 수 N이 첫째 줄에 주어진다. N은 1 이상 100,000 이하의 자연수다.

  • 이어서 둘째 줄에 N번의 기록이 측정한 순서대로 공백을 두고 주어진다. 각 기록은 -1,000,000 이상 1,000,000 이하의 정수다. 기록에는 음수와 0이 섞여 있을 수 있으며, 같은 값이 여러 번 나올 수도 있다.

출력 조건

  • 가장 낮은 값과 가장 높은 값을 한 줄에 출력한다. 가장 낮은 값을 먼저 적고, 공백을 하나 둔 다음에 가장 높은 값을 적는다. 줄의 끝에는 공백을 남기지 않고 줄을 바꾼다.

요구사항

  • 입력은 표준 입력으로 받고 답은 표준 출력으로 내보냅니다
  • 읽어야 하는 수는 첫째 줄의 N과 둘째 줄의 N개 기록입니다
  • 기록에는 음수가 섞여 있습니다. 처음 값을 0으로 두고 견주면 틀린 답이 나옵니다
  • 출력은 한 줄이고, 두 값 사이의 구분은 공백 하나입니다
  • 채점은 출력을 기대값과 글자 하나까지 견줍니다
  • 표준 입력으로 읽고 표준 출력으로 내보내는 프로그램을 짜야 합니다
  • 쓸 수 있는 말은 파이썬, 자바스크립트입니다
  • 메모리 제한은 256MB입니다. 브라우저에서는 재지 않고 적기만 합니다
  • 시간 제한은 출제자의 정답 코드를 같은 런타임에서 재서 정합니다
  • 이 문제는 프롬프트가 아니라 코드를 냅니다. 그 코드는 이 기기의 브라우저에서 돌고, 서버로는 나온 출력의 지문과 걸린 시간만 갑니다. 맞았는지는 서버가 정합니다. 실행 시간은 각자 기기가 적어 보내는 값이라, 코드와 기기 정보를 순위표에 같이 내걸어 둡니다.
  • 케이스는 15개이고, 그 가운데 3개는 입력과 기대 출력을 함께 보여 줍니다. 나머지는 제출할 때만 쓰이고 화면에는 보여 주지 않습니다.
  • 케이스 15개를 전부 통과해야 해결입니다.
문제의 요구 사항을 잘 읽고 해결해 주세요. 단, 채점 과정을 건드려 통과한 것처럼 꾸미는 경우 적발 시 제재될 수 있습니다. 제출한 코드는 순위표에 함께 공개됩니다.

예시

공개 케이스 3개입니다. 채점에는 숨은 케이스가 함께 쓰입니다. 케이스 15개를 전부 통과해야 해결입니다.

입력
기대 출력
1
-685155
-685155 -685155
3
855384 239726 901628
239726 901628
5
-290790 96108 279372 296405 -940679
-940679 296405

풀이

코드는 이 기기에서돕니다. 서버로는 나온 출력의 지문과 걸린 시간만 갑니다. 맞았는지는 서버가 정합니다.

0자1줄메모리 256MB (적어만 둡니다)기준 15ms

제출은 로그인 하셔야 됩니다. 공개 케이스로 돌려보는 것은 로그인 없이도 됩니다.

공개 케이스 3개로 돌려보기가 됩니다. 제출하면 숨은 케이스까지 돕니다.

이 문제를 푼 사람

시간은 푸는 데 걸린 시간입니다. 입력을 읽는 시간은 푸는 분이 어쩔 수 없는 값이라 빼고 셉니다. 그리고 이 값은 각자 기기가 적어 보내는 값이라, 어느 기기에서 쟀는지 같이 적어 둡니다.

1bampal296ms82자파이썬Windows NT 10.0 / Chrome/156.0.0.0 / 8코어 / 16GB

이 분이 코드를 비공개로 두셨습니다.