교 향
Maximalism
교 향
전체 방문자
오늘
어제
  • 전체글
    • Coding
    • Linux
    • Docker
    • Python
    • AI
      • GPT
      • Pandas
      • Numpy
      • tensorflow
      • pytorch
      • openCV
      • Study
      • AIconnect - [GPT]한국어..
    • Data structure, OS
    • Competitions
    • Investment
    • Book
    • Health
    • Trip
    • Memo
    • 대학원

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • ActivationFunction #활성화함수 #인공지능면접
  • AI면접 #딥러닝면접 #인공지능면접 #기울기소실 #GradientVanishing

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
교 향

Maximalism

Coding

백준 2562번

2022. 10. 18. 02:30

문제

9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.

입력


첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.

출력

첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.

 

[틀리게 작성한 원본] :

input_list=[]
for i in range(9):

    # 근데 map~이렇게만쓰면 map오브젝트 주소값만뽑아서 x for x써줘야한다 생각해서 쓴건데

    # 이렇게 쓰니까 map오브젝트에서 generator타입으로 바뀌었음
    input_list.append(x for x in map(int, input().split('\n')))

max_value = max(input_list)
order_in_input_list = input_list.index('max_value')
        
for a in input_list:
    if(a<100):
        print(max_value)
        print(order_in_input_list)
    else:
        print("error")

이 때 발생한 오류 : TypeError: '>' not supported between instances of 'generator' and 'generator'



 

[수정 1] :

input_list=[]
for i in range(9):
    a = int(input().split('\\')
    if a<100:
        input_list.append(a)

print(max(input_list))
print(input_list.index(max(input_list))+1)

 

이 때 발생한 오류 : TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'

문제에서 엔터를 쳐서 값을 input받는다는 것에 split안에 개행문자를 넣었지만

이렇게 넣으니 list타입으로 들어가게 되었고,

사실 for문을 돌며 인풋 받을 때마다 엔터를 치니까 개행문자 안 넣어도 되었으며 int(input())은 int형식을 받음

 

[답1 ] :

num_list=[]
for i in range(5):
    a = int(input())
    if a<100:
        num_list.append(a)

print(max(num_list))
print(input_list.index(max(num_list))+1)

혹은 if문을 빼도 됨

[답2] :
num_list = []
for i in range(9):
    num_list.append(int(input()))
print(max(num_list))
print(num_list.index(max(num_list))+1)

 

 

나와 같은 질문▽

https://dojang.io/mod/forum/discuss.php?d=856 

 

파이썬 코딩 도장: 6.4 두 변수를 바로 정수형으로 바꿔 주는 방법에 대해서

변수는 값을 바꿀 수 있습니다. >>> a = 10>>> a10>>> a = 20>>> a20>>> 파이썬은 여러 가지 편리한 문법을 제공하지만, 언어 전체를 학습하기 전에는 자칫 오해를 불러일으킬 수 있습니다. >>> b = 10, 20>>> b(1

dojang.io

 

 

 

※ 참고 )반복문으로 리스트 만들기

https://dojang.io/mod/page/view.php?id=2293

    

 

파이썬 코딩 도장: 23.3 반복문으로 리스트 만들기

이번에는 for 반복문과 append를 활용하여 리스트를 만드는 방법을 알아보겠습니다. 23.3.1  for 반복문으로 1차원 리스트 만들기 먼저 요소 10개가 일렬로 늘어서 있는 1차원 리스트부터 만들어보겠

dojang.io

 

'Coding' 카테고리의 다른 글

커널아 왜 자꾸 죽는거니?  (0) 2022.12.05
터미널창에서 글자를 복사할 땐  (0) 2022.10.06
파이썬 스니펫(조각코드 모음집, 위키독스)  (0) 2022.09.22
크롤링 코드 샘플  (0) 2022.07.22
pipreqs - 설치한 라이브러리만 requirements로 뽑고 싶을 때  (0) 2022.07.14
    'Coding' 카테고리의 다른 글
    • 커널아 왜 자꾸 죽는거니?
    • 터미널창에서 글자를 복사할 땐
    • 파이썬 스니펫(조각코드 모음집, 위키독스)
    • 크롤링 코드 샘플
    교 향
    교 향
    AI/ML/DL

    티스토리툴바