Submission #17503078


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)
                         continue
            
        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 644 Byte
Status
Exec Time 2010 ms
Memory 9336 KB

Judge Result

Set Name All
Score / Max Score 0 / 5
Status
× 2
× 4
× 1
Set Name Test Cases
All 00, 01, 02, 03, 04, 90, 91
Case Name Status Exec Time Memory
00 1932 ms 9184 KB
01 1842 ms 9300 KB
02 2010 ms 9336 KB
03 1947 ms 9312 KB
04 1561 ms 9284 KB
90 25 ms 8860 KB
91 19 ms 8852 KB