Submission #17502294


Source Code Expand

Copy
S=str(input())
 
dp = [[0]*(len(S)) for _ in range(len(S))]
 
for w in range(2,len(S)+1):
    for i in range(len(S)):
        j=w+i
        if j>=len(S):
            continue
        if S[i:j+1]=="iwi":
            dp[i][j]=1
            continue
        if (w+1)%3==0:
             if S[i]=="i" and S[j]=="i":
                 for k in range(i+1,j-1):
                     if S[k]=="w":
                         dp[i][j]=max(dp[i][j],dp[i+1][k]+dp[k+1][j-1]+1)
        else:
            for mid in range(i+1,j):
                dp[i][j]=max(dp[i][j],dp[i][mid]+dp[mid+1][j])
    
print(dp[0][-1])

Submission Info

Submission Time
Task I - イウィ
User Matsuda123
Language Python (3.8.2)
Score 0
Code Size 618 Byte
Status
Exec Time 1453 ms
Memory 9476 KB

Judge Result

Set Name All
Score / Max Score 0 / 5
Status
× 2
× 5
Set Name Test Cases
All 00, 01, 02, 03, 04, 90, 91
Case Name Status Exec Time Memory
00 1363 ms 9476 KB
01 1297 ms 9316 KB
02 1453 ms 9288 KB
03 1443 ms 9316 KB
04 1121 ms 9224 KB
90 20 ms 8996 KB
91 18 ms 9028 KB