Submission #1661417
Source Code Expand
#include <bits/stdc++.h> #define REP(i,a,b) for(int i=(a);i<(b);i++) #define RREP(i,a,b) for(int i=(a);i>=(b);i--) typedef long long ll; typedef long double ld; using namespace std; const int INF=1e9, MOD=1e9+7; int n,dp[4010][4010]; string s,w; int main(){ cin >> s >> w; REP(i,0,w.size()) if(s[0]==w[i]) dp[0][i]=1; REP(i,0,s.size()) if(w[0]==s[1]) dp[i][0]=1; REP(i,1,s.size()) REP(j,1,w.size()) if(s[i]==w[j]) dp[i][j]=dp[i-1][j-1]+1; int ma=0; REP(i,0,s.size()) REP(j,0,w.size()) ma=max(ma,dp[i][j]); cout << ma << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | B - 共通部分文字列 |
User | ecasdqina |
Language | C++14 (GCC 5.4.1) |
Score | 20 |
Code Size | 572 Byte |
Status | AC |
Exec Time | 60 ms |
Memory | 62976 KB |
Judge Result
Set Name | set01 | set02 | set03 | set04 | set05 | set06 | set07 | set08 | set09 | set10 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | 2 / 2 | ||||||||||||||||||||
Status |
|
|
|
|
|
|
|
|
|
|
Set Name | Test Cases |
---|---|
set01 | data1 |
set02 | data2 |
set03 | data3 |
set04 | data4 |
set05 | data5 |
set06 | data6 |
set07 | data7 |
set08 | data8 |
set09 | data9 |
set10 | data10 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
data1 | AC | 1 ms | 384 KB |
data10 | AC | 38 ms | 256 KB |
data2 | AC | 1 ms | 384 KB |
data3 | AC | 1 ms | 256 KB |
data4 | AC | 60 ms | 62976 KB |
data5 | AC | 51 ms | 62976 KB |
data6 | AC | 51 ms | 62720 KB |
data7 | AC | 52 ms | 62848 KB |
data8 | AC | 52 ms | 62848 KB |
data9 | AC | 51 ms | 62848 KB |