Submission #7080333


Source Code Expand

def mul(S, l, r):
    p = 1
    for i in range(l, r):
        p *= S[i]
    return p

def solve0(N, K, S):

    answer = 0
    ml, mr = 0, 0
    for l in range(N):
        for r in range(l, N+1):
            if mul(S, l, r) <= K:
                if answer < r-l:
                    answer = r-l
                    ml, mr = l, r
    #print(S[ml:mr], mul(S, ml, mr), K)
    return answer

def solve(N, K, S):
    answer = 0
    ml, mr = 0, 0
    l = 0
    r = 0
    while l < N:
        if l == r:
            p = 1
        # [l, r)
        #print("start", (l, r), "P=%d"%p)
        while r < N and p * S[r] <= K:
            p *= S[r]
            r += 1
            #print("     ", (l, r), p)
        if p <= K and answer < r - l:
            #print(S[l:r], "P=%d"%p, (l, r), r- l)
            ml, mr = l, r
            answer = r - l
        if l < r:
            p = p // S[l]
        l += 1
        if r < l:
            r = l
    #print(S[ml:mr], mul(S, ml, mr), K)
    return answer

def test():
    from random import randint
    N = 10
    K = 300000
    for i in range(10000):
        S = [randint(1, 10) for i in range(N)]
        s0 = solve0(N, K, S)
        s = solve(N, K, S)
        if s0 != s:
            with open("8", "w") as f:
                print(N, K, file=f)
                for a in S:
                    print(a, file=f)
            print("NG")
            return
    print("ok", i)

#test()

N, K = map(int, input().split())
S = [0]*N
for i in range(N):
    S[i] = int(input())
if min(*S) == 0:
    print(len(S))
else:
    s = solve(N, K, S)
    print(s)


Submission Info

Submission Time
Task C - 列
User osamu329
Language Python (3.4.3)
Score 100
Code Size 1660 Byte
Status AC
Exec Time 251 ms
Memory 8564 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 20 / 20 80 / 80
Status
AC × 4
AC × 27
AC × 44
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt
Subtask1 subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_corner.txt, subtask1_killer1.txt, subtask1_killer2.txt, subtask1_killer3.txt, subtask1_killer4.txt, subtask1_killer5.txt
Subtask2 subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_corner.txt, subtask1_killer1.txt, subtask1_killer2.txt, subtask1_killer3.txt, subtask1_killer4.txt, subtask1_killer5.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 18 ms 3188 KB
subtask0_sample_02.txt AC 18 ms 3188 KB
subtask0_sample_03.txt AC 18 ms 3064 KB
subtask0_sample_04.txt AC 19 ms 3064 KB
subtask1_01.txt AC 20 ms 3188 KB
subtask1_02.txt AC 20 ms 3188 KB
subtask1_03.txt AC 20 ms 3188 KB
subtask1_04.txt AC 20 ms 3188 KB
subtask1_05.txt AC 20 ms 3188 KB
subtask1_06.txt AC 20 ms 3188 KB
subtask1_07.txt AC 20 ms 3188 KB
subtask1_08.txt AC 20 ms 3188 KB
subtask1_09.txt AC 21 ms 3188 KB
subtask1_10.txt AC 20 ms 3188 KB
subtask1_11.txt AC 20 ms 3188 KB
subtask1_12.txt AC 20 ms 3188 KB
subtask1_13.txt AC 20 ms 3188 KB
subtask1_14.txt AC 20 ms 3188 KB
subtask1_15.txt AC 20 ms 3188 KB
subtask1_16.txt AC 20 ms 3188 KB
subtask1_17.txt AC 20 ms 3188 KB
subtask1_corner.txt AC 18 ms 3064 KB
subtask1_killer1.txt AC 18 ms 3064 KB
subtask1_killer2.txt AC 18 ms 3188 KB
subtask1_killer3.txt AC 18 ms 3064 KB
subtask1_killer4.txt AC 18 ms 3188 KB
subtask1_killer5.txt AC 18 ms 3064 KB
subtask2_01.txt AC 209 ms 5492 KB
subtask2_02.txt AC 222 ms 5492 KB
subtask2_03.txt AC 239 ms 8564 KB
subtask2_04.txt AC 229 ms 5492 KB
subtask2_05.txt AC 210 ms 8564 KB
subtask2_06.txt AC 216 ms 8564 KB
subtask2_07.txt AC 234 ms 5492 KB
subtask2_08.txt AC 238 ms 5492 KB
subtask2_09.txt AC 238 ms 5492 KB
subtask2_10.txt AC 240 ms 5492 KB
subtask2_11.txt AC 241 ms 5492 KB
subtask2_12.txt AC 247 ms 7768 KB
subtask2_13.txt AC 244 ms 7656 KB
subtask2_14.txt AC 237 ms 7744 KB
subtask2_15.txt AC 251 ms 8564 KB
subtask2_16.txt AC 233 ms 5492 KB
subtask2_17.txt AC 237 ms 5492 KB