Atcoder 151D BFS最短路問題

2021-10-04 08:34:05 字數 657 閱讀 2174

bfs最短路問題

題意:

求任意兩個可互相到達的點的最短路的最大值。

思路:

幾乎是板子題,小範圍資料直接暴力,碰到點就進行bfs,bfs停止的條件就是走不動了,也就是當前點(i, j)能走到的最遠距離且是到達最遠處的最短路徑。不斷維護到這個最遠處的最短路徑最大值即可。

ac**:

#include using namespace std;

int n, m;

char a[25][25];

bool vis[25][25];

int dx[4] = ;

int dy[4] = ;

struct pp s, q;

queue qua;

int ans;

void init()

}bool chk(int x, int y)

int bfs(int x, int y)

} return res;

}int main()

} }printf("%d\n", ans);

return 0;

}

AtCoder 2565(思維 暴力)

將乙個h w的矩形切成三份,每一次只能水平或者垂直切,問最大塊的面積 最小快的面積 的最小值是多少。先列舉水平切第一塊的高i,那麼剩餘部分h i要麼繼續水平切 要麼垂直切,因為要使最大快 最小快 最小,那麼剩下的兩塊肯定是相差最少為好,所以可以拆成w 2和w w 2兩塊,也可以拆成 h i 2和 h...

AtCoder 096 D 題解報告

已知乙個圓形櫃檯周長為c 你在x 0的位置,圓形櫃檯上存在n個點,每個點x i 上有能量為v i 的食物,並且你每走一步消耗1點能量 這裡自身能量可以為負 求你在這環形道路上走時,某一時刻自身擁有的最大能量是多少。因為是乙個環,我們可以正向走也可以反向走,同時還可以先正向走到某個點 i 再回到x 0...

演算法導論15 1

動態規劃 dynamic programming 描述了它區別與其他演算法的最大特徵 其中 programming 表示的是一種 法,在動態規劃演算法執行的過程中,會動態地去將子問題的解填入 和讀取已知子問題的解,以減少不必要的運算 相同點 都是通過組合子問題的解來求解原問題 不同點 動態規劃子問題...