#include #include #include #include #include using namespace std; // N E S W constexpr array dr = {-1, 0, 1, 0}, dc = { 0, 1, 0,-1}; constexpr int dr_size = dr.size(); int main(void) { int N, V, sr, sc, gr, gc; scanf("%d%d%d%d%d%d", &N, &V, &sc, &sr, &gc, &gr); --sr, --sc, --gr, --gc; vector> G(N, vector(N, 0)); // G[N][N] for(int r=0; r>> seen(N, vector>(N, vector(V+1, false))); // seen[N][N][V+1] queue> que; // 移動回数, 座標, 残りHP que.emplace(0, sr, sc, V); int res = -1; while(!que.empty()) { int step, r, c, v; tie(step, r, c, v) = que.front(); que.pop(); if(r == gr && c == gc) { res = step; break; } for(int i=0; i