• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

파일입력

20.07.12 17:47 작성 조회수 131

0

안녕하세요

섹션 3.7 사과나무를 풀던 중 질문이 생겨 드립니다.

이전까지는 제가 단순히 입력하여 테스트 해보았지만

갈수록 입력량이 많아져 파일에서 입력받아오는것을 시도하였지만 잘 안되네요

아래는 코드의 일부분이고

import sys

sys.stdin=open("input.txt","rt")

 

n=int(input())

matrix = []

total=0

for i in range(0,n):

    tmp = list(map(int,input().split()))

.py파일과 같은 경로(같은 폴더 내)에 input.txt를 놓은 상태이며

프로그램 실행 시 콘솔창에서 입력을 따로 줘야하고 파일에서 입력을 가져오지 못합니다.

개발환경은 spyder사용중입니다.

해결방법이 있는지 궁금합니다!

답변 2

·

답변을 작성해보세요.

0

suhr님의 프로필

suhr

질문자

2020.07.13

적어주신 코드대로 하니 문제없이 잘 동작합니다

도움 주셔서 감사합니다 ^^

0

안녕하세요^^ 제가 스파이더를 사용하지 않아서 더 좋은 방법이 있는지는 잘 모르겠습니다. 아래 코드처럼하니까 나오기는 합니다.

with open('input.txt') as f:
    file=f.readlines()

n=int(file[0])
arr=[list(map(int, file[i].split())) for i in range(1, n+1)]

res=0
s=e=n//2
for i in range(n):
    for j in range(s, e+1):
        res+=arr[i][j]
    if i<n//2:
        s-=1
        e+=1
    else:
        s+=1
        e-=1
print(res)