01/10/2018, 13:43

Cho mình hỏi 1 file input có 5 case 1 case là 2 dòng thì cách đọc và ghi file như thế nào?

HK boy viết 15:47 ngày 01/10/2018

Đọc như đề bảo.

for STUPIDTESTCASE in range(5):
    # đọc từng test, mỗi test gồm 2 dòng
Phạm Trung viết 15:45 ngày 01/10/2018

Mình sửa lại rồi nhưng k hiểu sao output chỉ in ra một kết quả mà không phải là 5
file input:

6 2 3
1 2 3 6 5 9
5 2 4
1 5 -1 -2 4
4 2 3
-1 -2 -3 4
6 2 4
-2 -3 -4 0 1 2
7 3 -4
-1 -2 -3 0 -1 2 3
lines = open("maxsubseq.inp").readlines()
for i in range(5):
 B=map(lambda x: int(x), lines[2*i].split(' '))
 n=B[0]
 l1=B[1]
 l2=B[2]
 A=map(lambda x: int(x), lines[2*i+1].split(' '))

 def tinhtrongso(A, n, l):
    lonnhat = 0
    t = 0
    for j in range(0, l - 1 + 1):
        t = t + A[j]
    lonnhat = t
    for i in range(0, n - l + 1):
        t = 0
        j = i
        for j in range(0, l - 1 + i + 1):
            t = t + A[j]
        if (t > lonnhat):
            lonnhat = t
    return lonnhat


 def tongtrongsocucdai(A, n, l1, l2):
    lonnhat = tinhtrongso(A, n, l1)
    i = l1 + 1
    for i in range(0, l2 + 1):
        tinhtrongso(A, n, i)
        if (lonnhat < tinhtrongso(A, n, i)):
            lonnhat = tinhtrongso(A, n, i)
    return lonnhat

 a = tongtrongsocucdai(A, n, l1, l2)
 file = open("maxsubseq.out", "wb")
 file.write(str(a))
HK boy viết 15:52 ngày 01/10/2018

Rõ ràng là input của test nào thì phải cho output của test đấy chứ, bạn phải đưa

a = tongtrongsocucdai(A, n, l1, l2)
file.write(str(a))

vào for 5 test. Còn bạn phải mở sẵn file output trước khi chạy 5 test case.

Bài liên quan
0