NORMDIST 문제 인풋 받기오류?.ㅜ

  • riceluxs1t
    riceluxs1t

    안녕하세요. 최근에 libe님께 감명받아 libe set 클리어를 위해
    https://algospot.com/judge/problem/read/NORMDIST
    문제를 풀고있습니다.

    다름이 아니라 python으로 문제 인풋을 받아오는중 오류가 발생하는데요..

    for _ in range(input()):
        l = map(int, raw_input().rstrip().split())
        m = l[1]
        num = map(int, raw_input().rstrip().split())
        print normDist(num, m)
    

    혹시 모를 trailing space 등을 고려해 rstrip()까지 해줬음에도 불구하고 RTE의 늪에 빠져 도움을 요청하고자 합니다. 문제에 대한 로직이 아니라 간단한..입력의 문제인데.. normDist 함수부분을 주석 처리하고 print 0 등을 해도 오류가 나는 상황입니다..
    감사합니다!


    9년 전
10개의 댓글이 있습니다.
  • VOCList
    VOCList

    몇가지 테스트 코드를 넣어서 돌려봤는데 저도 인풋을 정상적으로 받지를 못하네요. 데이터 형식이 문제에 주어진 포멧과 좀 다르게 주어지는게 아닐까 싶습니다.


    9년 전 link
  • riceluxs1t
    riceluxs1t

    감사합니다!


    9년 전 link
  • restart
    restart

    C의 scanf로는 잘 읽히고 N의 10의 배수라는 것과 score<N이라는 단정문도 통과했습니당


    9년 전 link
  • riceluxs1t
    riceluxs1t

    C의 scanf로는 잘 읽히는것 같으나..주어진 양식대로 라면 파이썬으로도 읽어야 하는데 어떤 부분에서 라인브레이크가 제대로 안되어 있는것 같습니다.


    9년 전 link
  • wookayin
    wookayin

    입력데이터가 잘못되어있네요. 테스트케이스가 다 주어지지 않고 EOF가 들어와 있습니다. 수정한 뒤 리저지하겠습니다. 불편을 드려 죄송합니다 ㅠ_ㅠ


    9년 전 link
  • riceluxs1t
    riceluxs1t

    감사합니다! 소스코드에 눈알만 부라리셔도 AC를 받는다는 웈님께서 친히 리저지 안하셔도 될 같습니다. (워낙에 RTE 서미션이 많아서..). 수정하신 뒤 알려주시면 제가 리서밋하겟습니다.


    9년 전 link
  • wookayin
    wookayin

    에고, 다시 확인해보니 테스트케이스 개수에는 문제가 없고 여러 테스트케이스가 한 줄에 붙어 있는 경우가 간혹 있었던 거네요. 일단 수정후 리저지했고, RTE는 더이상 안나는것 같네요. 거듭 죄송합니다 ㅠㅠ


    9년 전 link
  • riceluxs1t
    riceluxs1t

    이렇게 한줄에 쭉있는 (하지만 format에는 맞는) 인풋을 읽으려면 readline() 대신에 read()를 써서 바이트 단위로 읽어와야 하나요? ㅜ 혹시 제가 모르는 C scanf처럼 간편한 방식이 있다면 귀뜸 부탁드립니다.


    9년 전 link
  • JongMan
    JongMan

    이런 건 어떨까요.

    import sys
    def tokenize():
        for line in sys.stdin:
            for tok in line.split():
                yield tok
    
    inp = tokenize()
    
    print inp.next()
    print inp.next()
    print inp.next()
    

    9년 전 link
  • hyunhwan
    hyunhwan

    에고 제가 만든 문제의 입력이 잘못되었네요. 고생하신 riceluxs1t께 심심한 위로의 뜻을 전합니다. 혹시나 해서 추가적으로 입력이 잘못되었는지 확인하는 방법에 대해서 적자면,

    Run-time error에 대한 정보가 어느정도 제공되는 경우에는 assert 구문을 이용하여 확인을 하는 방법이 있을 것이고, 만약에 이것이 불가능할 경우, 문제가 발생할 경우 무한 반복문을 유발하게 하여 점검을 하는 방법이 있습니다.

    이에 대한 처리를 해준 wookayin님 고맙습니다!

    그리고 JongMan님의 tokenize 코드는 뭐랄까, 간지 폭풍입니다. yield문의 적절한 사용법인 것 같습니다!


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