Submission #1814988
Source Code Expand
#include<cstdio> #include<cstdlib> #include<cmath> #include<iostream> #include<string> #include<stack> #include<queue> #include<vector> #include<map> #include<set> #include<algorithm> #include<numeric> #define rep(n) for(int i=0;i<n;i++) #define repp(j, n) for(int j=0;j<n;j++) #define reppp(i, m, n) for(int i=m;i<=n;i++) #define all(c) c.begin(), c.end() #define rall(c) c.rbegin(), c.rend() #define pb(x) push_back(x) #define eb(x,y) emplace_back(x,y) #define MOD 1000000007 #define MAX 1000000001 #define INF 1410065408 #define EPS 1e-9 #define DEBUG 0 #define ll long long #define Pll pair<ll, ll> #define Pii pair<int, int> using namespace std; signed main(){ int H, W; cin >> H >> W; vector<string> c(H); rep(H) cin >> c[i]; int ans = 0; repp(k, W-1){ vector< vector<int> > dp(H+1, vector<int>(H+1, INF)); vector< vector<int> > costs(H+1, vector<int>(H+1, 0)); dp[0][0] = 0; repp(i, H+1){ repp(j, H+1){ if(i == H && j == H) break; if(i == 0 || j == 0){ int ii = i, jj = j; int base = min(i, j); while(ii < H && jj < H){ if(c[jj-base][k] == c[ii-base][k+1]){ costs[i][j]++; } ii++; jj++; } }else{ costs[i][j] = costs[i-1][j-1]; if(c[H-i][k] == c[H-j][k+1]) costs[i][j]--; } // cout << i << " " << j << " " << costs[i][j] << endl; if(i < H) dp[i+1][j] = min(dp[i+1][j], dp[i][j] + costs[i][j]); if(j < H) dp[i][j+1] = min(dp[i][j+1], dp[i][j] + costs[i][j]); } } // cout << dp[H][H] << endl; ans += dp[H][H]; } cout << ans; }
Submission Info
Submission Time | |
---|---|
Task | D - Friction |
User | Noimin |
Language | C++14 (GCC 5.4.1) |
Score | 800 |
Code Size | 1987 Byte |
Status | AC |
Exec Time | 667 ms |
Memory | 1200 KB |
Judge Result
Set Name | Sample | Subtask | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | 500 / 500 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 0_004.txt |
Subtask | 0_000.txt, 0_001.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt |
All | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 0_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt, 2_023.txt, 2_024.txt, 2_025.txt, 2_026.txt, 2_027.txt, 2_028.txt, 2_029.txt, 2_030.txt, 2_031.txt, 2_032.txt, 2_033.txt, 2_034.txt, 2_035.txt, 2_036.txt, 2_037.txt, 2_038.txt, 2_039.txt, 2_040.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_000.txt | AC | 1 ms | 256 KB |
0_001.txt | AC | 1 ms | 256 KB |
0_002.txt | AC | 1 ms | 256 KB |
0_003.txt | AC | 1 ms | 256 KB |
0_004.txt | AC | 1 ms | 256 KB |
1_005.txt | AC | 1 ms | 256 KB |
1_006.txt | AC | 5 ms | 1024 KB |
1_007.txt | AC | 5 ms | 1024 KB |
1_008.txt | AC | 5 ms | 1024 KB |
1_009.txt | AC | 4 ms | 1024 KB |
1_010.txt | AC | 5 ms | 1024 KB |
1_011.txt | AC | 5 ms | 896 KB |
1_012.txt | AC | 5 ms | 1024 KB |
1_013.txt | AC | 3 ms | 512 KB |
1_014.txt | AC | 6 ms | 1024 KB |
1_015.txt | AC | 3 ms | 640 KB |
1_016.txt | AC | 6 ms | 1024 KB |
1_017.txt | AC | 1 ms | 256 KB |
1_018.txt | AC | 6 ms | 1024 KB |
1_019.txt | AC | 3 ms | 512 KB |
1_020.txt | AC | 5 ms | 1024 KB |
1_021.txt | AC | 4 ms | 972 KB |
1_022.txt | AC | 5 ms | 1024 KB |
2_023.txt | AC | 1 ms | 256 KB |
2_024.txt | AC | 490 ms | 1196 KB |
2_025.txt | AC | 480 ms | 1200 KB |
2_026.txt | AC | 475 ms | 1196 KB |
2_027.txt | AC | 461 ms | 1200 KB |
2_028.txt | AC | 491 ms | 1196 KB |
2_029.txt | AC | 19 ms | 256 KB |
2_030.txt | AC | 518 ms | 1200 KB |
2_031.txt | AC | 19 ms | 256 KB |
2_032.txt | AC | 667 ms | 1200 KB |
2_033.txt | AC | 133 ms | 544 KB |
2_034.txt | AC | 621 ms | 1196 KB |
2_035.txt | AC | 336 ms | 1104 KB |
2_036.txt | AC | 590 ms | 1196 KB |
2_037.txt | AC | 13 ms | 496 KB |
2_038.txt | AC | 507 ms | 1200 KB |
2_039.txt | AC | 9 ms | 384 KB |
2_040.txt | AC | 488 ms | 1200 KB |