2 条题解
-
0
#include <bits/stdc++.h> using namespace std; char dc[6][10] = {"in", "one", "out", "input", "puton", "output"}; int b[6]; char s[11100]; bool f[11100]; int main() { for (int i = 0; i < 6; i++)b[i] = strlen(dc[i]); int T;scanf("%d", &T); while (T--) { scanf("%s", s + 1);int v = strlen(s + 1); memset(f, 0, sizeof(f));f[0] = 1; for(int i=1;i<=v;i++) for(int j=0;j<=5;j++) if(i>=b[j]) { if (strncmp(s + i - b[j] + 1, dc[j], b[j]) == 0) f[i] |= f[i - b[j]]; } if (f[v]) printf("YES\n"); else printf("NO\n"); } return 0; } -
0
#include <bits/stdc++.h> using namespace std; char dc[6][10] = {"in", "one", "out", "input", "puton", "output"}; int b[6]; char s[11100]; bool f[11100]; int main() { for (int i = 0; i < 6; i++)b[i] = strlen(dc[i]); int T;scanf("%d", &T); while (T--) { scanf("%s", s + 1);int v = strlen(s + 1); memset(f, 0, sizeof(f));f[0] = 1; for(int i=1;i<=v;i++) for(int j=0;j<=5;j++) if(i>=b[j]) { if (strncmp(s + i - b[j] + 1, dc[j], b[j]) == 0) f[i] |= f[i - b[j]]; } if (f[v]) printf("YES\n"); else printf("NO\n"); } return 0; }
- 1
信息
- ID
- 103
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 3
- 标签
- 递交数
- 102
- 已通过
- 58
- 上传者