Submission #5910501
Source Code Expand
#include <bits/stdc++.h> using namespace std; int main() { string s; cin >> s; int const n = s.size(); // [l, r) vector<vector<int>> dp(n + 1, vector<int>(n + 1, 0)); for(int w = 0; w <= n; ++w) { for(int l = 0; l + w <= n; ++l) { for(int i = l; i <= l + w; ++i) { dp[l][l + w] = max(dp[l][l + w], dp[l][i] + dp[i][l + w]); } if(dp[l][l + w] != w) { continue; } for(int d = 0; d <= 3; ++d) { if(l - d < 0 || n < l + w + 3 - d) { continue; } auto iwi = s.substr(l - d, d) + s.substr(l + w, 3 - d); if(iwi == "iwi") { dp[l - d][l + w + 3 - d] = dp[l][l + w] + 3; } } } } int res = 0; for(int i = 0; i <= n; ++i) { for(int j = 0; j <= n; ++j) { res = max(dp[i][j], res); } } res /= 3; cout << res << endl; }
Submission Info
Submission Time | |
---|---|
Task | I - イウィ |
User | Shun2019 |
Language | C++14 (GCC 5.4.1) |
Score | 5 |
Code Size | 1059 Byte |
Status | AC |
Exec Time | 8 ms |
Memory | 640 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 5 / 5 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | 00, 01, 02, 03, 04, 90, 91 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00 | AC | 8 ms | 640 KB |
01 | AC | 8 ms | 640 KB |
02 | AC | 8 ms | 640 KB |
03 | AC | 8 ms | 640 KB |
04 | AC | 8 ms | 512 KB |
90 | AC | 1 ms | 256 KB |
91 | AC | 1 ms | 256 KB |