Submission #17506106


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 and S[i]=="i" and S[j]=="i":
            for k in range(i+1,j):
                    if S[k]=="w":
                        dp[i][j]=max(dp[i][j],dp[i][k-1]+dp[k+1][j]+1)
                        
            for mid in range(i+1,j):
                dp[i][j]=max(dp[i][j],dp[i][mid]+dp[mid+1][j])
        else:
            dp[i][j]=dp[i][j-1]
                
    
print(dp[0][-1])

Submission Info

Submission Time
Task I - イウィ
User Matsuda123
Language Python (3.8.2)
Score 0
Code Size 670 Byte
Status WA
Exec Time 535 ms
Memory 9532 KB

Judge Result

Set Name All
Score / Max Score 0 / 5
Status
AC × 2
WA × 5
Set Name Test Cases
All 00, 01, 02, 03, 04, 90, 91
Case Name Status Exec Time Memory
00 WA 299 ms 9400 KB
01 WA 129 ms 9416 KB
02 WA 535 ms 9396 KB
03 WA 519 ms 9532 KB
04 WA 344 ms 9220 KB
90 AC 25 ms 8864 KB
91 AC 20 ms 9028 KB