Submission #17502282


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 614 Byte
Status
Exec Time 29 ms
Memory 8956 KB

Judge Result

Set Name All
Score / Max Score 0 / 5
Status
× 7
Set Name Test Cases
All 00, 01, 02, 03, 04, 90, 91
Case Name Status Exec Time Memory
00 29 ms 8860 KB
01 18 ms 8844 KB
02 25 ms 8844 KB
03 23 ms 8956 KB
04 18 ms 8888 KB
90 18 ms 8892 KB
91 25 ms 8856 KB