# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
17863 | 2016-01-12T14:37:54 Z | Elibay | K번째 경로 (IZhO11_kthpath) | C++14 | 1229 ms | 262144 KB |
#include <bits/stdc++.h> using namespace std; const int MaxN = 30 + 17, INF = 1e9; long long n, m, q; char a[MaxN][MaxN]; vector < string > g[MaxN][MaxN]; int main () { ios_base :: sync_with_stdio (0); #ifdef Elibay freopen (".in", "r", stdin); #endif cin >> n >> m; for (int i = 1; i <= n; ++ i) for (int j = 1; j <= m; ++ j) cin >> a[i][j]; cin >> q; string w; w += a[1][1]; g[1][1].push_back (w); for (int i = 1; i <= n; ++ i) { for (int j = 1; j <= m; ++ j) { if (i == 1 && j == 1) continue; if (i - 1 >= 1) { for (int k = 0; k < g[i - 1][j].size(); ++ k) g[i][j].push_back (g[i - 1][j][k] + a[i][j]); } if (j - 1 >= 1) { for (int k = 0; k < g[i][j - 1].size(); ++ k) g[i][j].push_back (g[i][j - 1][k] + a[i][j]); } sort (g[i][j].begin (), g[i][j].end ()); int w = g[i][j].size() - q; while (w > 0) -- w, g[i][j].pop_back (); } } -- q; cout << g[n][m][q]; return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 2236 KB | Output is correct |
2 | Correct | 0 ms | 2236 KB | Output is correct |
3 | Correct | 0 ms | 2236 KB | Output is correct |
4 | Memory limit exceeded | 1229 ms | 262144 KB | Memory limit exceeded |
5 | Halted | 0 ms | 0 KB | - |