인프런 커뮤니티 질문&답변

thehrto12님의 프로필 이미지
thehrto12

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

2. 랜선 자르기(결정알고리즘)

파일 읽는데 이상한 에러 현상

해결된 질문

작성

·

156

0

안녕하세요 제 코드로 채점을 받으니 강사님이 제공하신 input.txt 케이스 5개 중,
케이스2 input.txt를 제외하고 나머지 케이스에서 전부 에러가 나옵니다
에러 내용은
Traceback (most recent call last):

File "c:\Users\seheo\OneDrive\문서\바탕 화면\코테채점\AA.py", line 11, in <module>

tmp = int(input())

EOFError: EOF when reading a line

인데요
아마 파일을 제대로 못 읽는 거 같습니다.(그냥 제공된 txt 파일을 그대로 가져다 파일 이름만 바꿔서 썼습니다.)


제 코드는

import sys
sys.stdin=open('input.txt','rt')

k, n = map(int, input().split())

# print(n, m)

arr = []
largest = 0
for i in range(n):
    tmp = int(input())
    arr.append(tmp)
    largest = max(largest, tmp)
# print(arr)

# k개 랜선 길이 제각각
# 잘라서 n개의 랜선으로 만들기 
# 이때 표준 최대 길이 구하기

# 1. 정렬해서 제일 큰 값의 절반으로 나눈 몫들 더해보기
# 2. 만약 n개가 합이 되면 그것?
cnt = 0
 

lt = 1
rt = largest
res = 0
while lt <= rt:
    mid = (lt+rt)//2
    cnt = 0
    for i in range(k):
        cnt += arr[i]//mid
    if cnt >= n:
        res = mid
        lt = mid + 1
    else:
        rt = mid - 1   
print(res)

입니다

왜 해당 현상이 나오는 것일까요?

답변 1

0

thehrto12님의 프로필 이미지
thehrto12
질문자

아 제 실수였네요.. 입력받는 범위를 k가 아닌 n으로 하고 있었습니다 ^^..

thehrto12님의 프로필 이미지
thehrto12

작성한 질문수

질문하기