Submission #149806

#TimeUsernameProblemLanguageResultExecution timeMemory
149806Outfraware Boat People (#200)On the Grid (FXCUP4_grid)C++17
0 / 100
7 ms256 KiB
#include "grid.h" typedef std::vector<int> VI; bool visit[1001] = { 0, }; // � ���� ����� VI makeSeq(int N, int start, VI &found, VI &len_friend) { VI v(N); for (int i = N - 1; i >= 0; --i) { if (len_friend[i]) v[i] = len_friend[i]; break; } for (int i = 0, count = 0; count < N; ++count) { int num = (start + count) % N; if (visit[num]) continue; v[i++] = num; } return v; } VI SortDisks(int N) { VI found(N, 0); VI len_friend(N, 0); int max_h = N + (N - 1); for (int L = N; L >= 1; --L) { for (int i = 0; i < N; ++i) { VI v = makeSeq(N, i, found, len_friend); int X = PutDisks(v); if (X != max_h) continue; found[v[0]] = L; visit[v[0]] = true; len_friend[L - 1] = v[0]; --max_h; break; } } return found; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...