原创 uva-10129 單詞

成語接龍可以抽象爲歐拉回路,單詞爲有向邊,詞頭詞尾爲節點,用dfs判斷是否圖是否連通,先判斷入度出度,然後dfs,在判斷圖是否連通。visitedv數組用來區別不存在的點、存在的點和存在且已用dfs訪問過的點 #include <

原创 uva-1347經典dp,邊界設置很重要

兩個人A、B同時從最左邊的點出發,一起嚴格向最右點走,且經過所有點一次 dp(i,j)表示max(i,j)之前的所有點都走過,在這個狀態下,到終點狀態還要走多少距離 d(i,j)==d(j,i),所以規定i>j(除了起點和終點的

原创 uva-572 種子填充floodfill

#include <cstdio> #include <cstring> #include <vector> #include <queue> #include <iostream> using namespace std; #d

原创 uva-673 平衡的括號,棧模擬

棧下溢或者最後不爲空,則輸出No gets在uva不能用,只好改成cin.getline了 #include <cstdio> #include <cstring> #include <vector> #include <que

原创 uva-536,從先序中序得出後序

build右序列的時候粗心,根節點p傳錯參數了,改了很久才發現 #include <cstdio> #include <cstring> #include <vector> #include <queue> #include <i

原创 uva-437 矩陣嵌套dp

舊題新做,以前都是照着揹包九講上的模板來的,現在照着紫書上的有向無環圖DAG來,把每一個節點當成一個點,可以嵌套表明兩個點連通,d(i)表明在節點i結束的最長路長度。不過解題重點還是把一個長方體看成三個高度不同的長方體。 #inc

原创 uva-839天平

白書代碼,太優美,簡直不能再簡潔 #include <cstdio> #include <cstring> #include <vector> #include <queue> using namespace std; const

原创 uva-297 四分樹

邊處理邊統計,模擬畫圖 #include <cstdio> #include <cstring> #include <vector> #include <queue> #include <iostream> using names

原创 uva679

二叉樹模擬 #include <cstdio> #include <cstring> using namespace std; const int maxd = 20; bool s[1<<maxd]; int index; in

原创 uva-1600 巡邏機器人

bfs判斷visited最好還是在入棧之前,這道題的就算visited==true,但如果走過的’1‘數量比較少的話,還是可以繼續入棧的 #include <cstdio> #include <cstring> #include

原创 前端js小練習,動態生成乘法表

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="styl

原创 stud-2779裸bfs

c++的數組下標爲負數竟然不報錯 #include <cstdio> #include <cstring> #include <vector> #include <queue> #include <iostream> using

原创 uva-439 騎士的移動

bfs,用隊列記錄步數 #include <cstdio> #include <cstring> #include <vector> #include <queue> #include <iostream> using names

原创 uva-122 樹的層次遍歷

uva 122 白書代碼 #include <cstdio> #include <cstring> #include <vector> #include <queue> using namespace std; const in

原创 uva-699

#include <cstdio> #include <cstring> #include <vector> #include <queue> #include <iostream> using namespace std; co