單詞方陣 蒟蒻題解

2022-03-03 21:36:38 字數 1514 閱讀 1527

這道題是乙個\(dfs\)(深度優先搜尋 \(depth\)

\(frist\)

\(sreach\))的題目,可是…我就是不想敲遞迴(我絕對不會告訴你我是想偷懶的),於是就有了這個程式和這篇題解……

首先,這是乙個二維的題目,要尋找8個方向,如下圖所示:

(-1,-1)

(-1, 0)

(-1, 1)

( 0,-1)

在這向八個方向尋找

( 0,1)

(1,-1)

(1,0)

(1,1)

所以,要預處理八個方向:

int dx[8]=;

int dy[8]=;

還有,這題還需要做乙個染色處理,碰到符合情況的就將其染色,於是:

bool t[101][101];
於是預處理就搞定了。

#includeusing namespace std;

int n;

bool t[101][101];

char w[101][101],d="yizhong";

int dx[8]=;

int dy[8]=;

接下來你們一定會以為我會寫\(dfs\)函式,然而,並非如此。

接下來就愉快的開始\(main( )\)主函式吧!

int main()

}if(tf)//符合情況

for(int j=0;j<=6;j++)

t[x+dx[i]*j][y+dy[i]*j]=1;//染色

}for(int i=1;i<=n;i++)//輸出

;int dy[8]=;

int main()

}if(tf)

for(int j=0;j<=6;j++)

t[x+dx[i]*j][y+dy[i]*j]=1;

}for(int i=1;i<=n;i++)

,,,,,,,};

bool dfs(int x,int y,int p,int s)

return 0;

}int main()

}for(int i=1;i<=n;i++)

,,,,,,,};

bool dfs(int x,int y,int p,int s)

else if(!t[x][y])

else return 1;}}

return 0;

}int main()} }

for(int i=1;i<=n;i++)

cout<}

return 0;

}```

題解到此為止,謝謝[鞠躬]!

景點中心 蒟蒻的小題解

話說寧波市的中小學生在鎮海中學參加計算機程式設計比賽,比賽之餘,他們在鎮海中學的各個景點參觀。鎮海中學共有n個景點,每個景點均有若干學生正在參觀。這n個景點以自然數1至n編號,每兩個景點的編號均不同。每兩個景點之間有且只有一條路徑。選擇哪個景點集中的學生,才能使所有學生走過的路徑之和最小呢?如果存在...

P1101 單詞方陣 題解

洛谷 p1101 單詞方陣 題目描述 給一n n的字母方陣,內可能蘊含多個 yizhong 單詞。單詞在方陣中是沿著同一方向連續擺放的。擺放可沿著 8 個方向的任一方向,同一單詞擺放時不再改變方向,單詞與單詞之間可以交叉,因此有可能共用字母。輸出時,將不是單詞的字母用 代替,以突出顯示單詞。輸入 第...

蒟蒻複習之 Floyd

暴力無解演算法 入門必備 然而我發現這個簡單的演算法還有很多用法 作為複習篇不講原理 圖的要求 既可以是無向圖也可以是有向圖,邊權可以為負,但是不能存在負環 複雜度為o n 3 原理 dp思路 f i j f i k f k j void floyd 注意 1應對所建的圖進行初始化如下 void i...