ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 백준 파이썬 10818 최소, 최대
    BOJ 2020. 3. 17. 22:21

     

     

     

     

     

     

     

     

     

    내 풀이

    1
    2
    3
    4
    5
    = int(input())
    = [0 for i in range(n)]
    = list(map(int,input().split()))
    print(min(A), max(A))
     
    cs

     

    가로로 입력해야할 때, a,b,c,d,e=list(map(int,input().split())) 이렇게 하기 싫고,

     

    실력도 안 늘 것이며 분명히 편한 방법이 존재할 거라고 생각했기 때문에, 고민하고 찾아다녔다.

     

    고민한 결과, 가로로 많은 수를 입력해야 하는 경우에는 변수를 하나하나 다 선언하기 보다는

     

    입력 개수와 같은 크기의 배열(전부 0넣은 배열)을 선언해주고 다시 입력해주면 된다는 걸 깨달았다.

     

     

    그리고 map(int,input().split())) 이렇게 받았을때는 map안의 원소가 일회용인 것 같았다.

    한번 출력하고나면 그 배열 안의 원소가 다 사라져버리는 방식이 아닐까?

    min하고나서 max하려니까 원소가 없다고 나오던데..

     

     

     

     

     

    고인물식 풀이

    1
    2
    3
    input()
    *a,=map(int,input().split())
    print(min(a),max(a))
     

    *a,=map( 이렇게 선언하면 a가 배열이 되는건가?

    *자체가 배열을 벗기는 작업인데 이런 형식을 쓰려면 반점(,)를 써야되는건가.

     

     

     

     

     

     

    https://mingrammer.com/understanding-the-asterisk-of-python/

    찾아보니까 여기에 파이썬의 Asterisk(*)에 대한 설명이 있었다.

     

    numbers = [123456]

     

    # unpacking의 좌변은 리스트 또는 튜플의 형태를 가져야하므로 단일 unpacking의 경우 *a가 아닌 *a,를 사용

    *a, = numbers

    # a = [1, 2, 3, 4, 5, 6]

     

    *a, b = numbers

    # a = [1, 2, 3, 4, 5]

    # b = 6

     

    a, *b, = numbers

    # a = 1

    # b = [2, 3, 4, 5, 6]

     

    a, *b, c = numbers

    # a = 1

    # b = [2, 3, 4, 5]

    # c = 6

     

     

    음.. 그래서 

    *a, = map ( int,input().split() )

    이렇게 선언을 해도 a가 입력한 것들의 배열이 된다는 것이구나.

     

     

     

     

     

     

     

    다른 풀이

    1
    2
    3
    input()
    A=sorted(map(int, input().split()))
    print(A[0], A[-1])
    cs

    이 분은, 이 문제가 최댓값 최솟값을 물어보는 것에 착안해서,

     

    입력받은 배열을 처음부터 오름차순으로 정리한다음 첫번째원소(최솟값), 마지막원소(최댓값)을 추출했다.

     

    마지막원소는 -1인덱스를 가지는것도 유용하게 쓰도록하자.

    'BOJ' 카테고리의 다른 글

    백준 파이썬 2747 피보나치 수  (0) 2020.03.17
    백준 파이썬 10872 팩토리얼  (0) 2020.03.17
    백준 파이썬 11022 A+B - 8  (0) 2020.03.17
    백준 파이썬 10950 A+B - 3  (0) 2020.03.17
    백준 파이썬 10871 X보다 작은 수  (0) 2020.03.17

    댓글

Designed by Tistory.