728x90
반응형

 

10818번 문제

https://www.acmicpc.net/problem/10818

 

10818번: 최소, 최대

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

www.acmicpc.net

VERSION 2.0

import sys

N = int(sys.stdin.readline())

A= list(map(int, sys.stdin.readline().split()))
print(min(A), max(A))

==> 그냥 min , max 함수 쓰기

VERSION 1.0

★★최소값이 -1,000,000 최대값이 1,000,000이므로  거꾸로 max변수에 최소값, min값에 최대값을 넣어

배열의 최소 최대 구하는데 원할하게 한다.★★

import sys
while True:
    N = int(sys.stdin.readline())
    if N<1 or N>1000000 :
        print("N의 범위는 1<=N<=1,000,000 인 정수입니다.")
    else:
        while True:
            s = sys.stdin.readline().split(' ')
            if len(s) != N: #리스트 s의 요소개수가 N의개수와 다를경우
                print("리스트 s의 요소값의 개수를 입력하신 {}개로 맞추십시오.".format(N))
            for i in range(N):
                a= int(s[i])
                if (a >1000000 or a<-1000000):
                    print("모든 정수는 -1000000보다 크거나 같고, 1000000보다 작거나 같은 정수이다.")
                    break
            else:
                a = 0 #a변수 선언
                max, min = -1000000 , 1000000 #max, min 변수 선언
                for i in range(N): #N의개수만큼 반복
                    a= int(s[i])
                        #print(int(s[i]), end = ' ')
                    if a >= max: #max값보다 크다면 max변수에 a 값 저장
                        max = a
                        #min = max #min값에 최대값 저장
                    if a <= min: #min값보다 a값이 작으면 min에 a값저장하여 점점 작아지는 값 저장하기
                        min = a 
                break
        break
print(min, max)

 

 

 

16 번째 줄의 ★★a = int(s[i])★★로 선언해야 코드가 돌아갔다.

a의 변수에 리스트의 요소값을 넣음으로 해서 코드가 수월하게 돌아갔다.

맞았습니다를 보기위한 이 혈투

 

728x90
반응형

+ Recent posts