Convert 문제 Python 아래와 똑같은 오류..

  • mark3236
    mark3236

    CONVERT 문제에서도, 컴파일 문제가 없는데 알고스팟 제출만 하면 똑같은 Nonzero return code 에러가 뜨네요;;;; 그냥 C++로 갈아타야 하나... 휴.......

    소스 코드입니다. 분명 컴파일러에서 문제가 없는데 런타임 오류가 뜨네요;;; 정말 단순한 코드입니다. 값, 단위 받아서 변환된 값과 단위를 리턴하고, 그걸 받아서 그냥 출력합니다. utf-8 문제도 아닙니다.
    소스코드:

    def convert(value, unit):
        r_value=0
        r_unit=0
        if unit=='kg':
            r_value=value*2.2046
            r_unit='lb'
        elif unit=='lb':
            r_value=value/2.2046
            r_unit='kg'
        elif unit=='l':
            r_value=value*0.2642
            r_unit='g'
        elif unit=='g':
            r_value=value/0.2642
            r_unit='l'
        r_value=round(r_value*10000)/10000
        return [r_value, r_unit]
    
    T=int(raw_input())
    for t in range(T):
        input=raw_input().split()
        input[0]=int(input[0])
        input[0], input[1]=convert(input[0], input[1])
        print str(t+1)+" "+str(input[0])+" "+input[1]
    

    9년 전
2개의 댓글이 있습니다.
  • nosiar
    nosiar

    int(input[0])에서 int 라고 하면 안되지 않나요?


    9년 전 link
  • riceluxs1t
    riceluxs1t

    콩님께서 말씀하신것처럼
    int(input[0])줄이 오류입니다. raW_input().split()을 하면 첫숫자를 char형태로 받게되는데 그걸 int로 적용하려하면 '3', '5'같은건 똑바로 처리하나 '3.5'같은건 오류를 토하게됩니다. 그래서 int(eval(input[0]))로 고치면. 일단 RTE는 없어지지만..여전히 오답.


    9년 전 link
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.