原创 叉積求點在直線的一側 poj 1106

傳送門 題目大意,讓我們從源點,半徑爲r,可任意旋轉的半圓中最多能包含多少個點。 發射臺爲p0,以p0爲軸心,可向任意方向旋轉,所以我們將任一點pi與p0間的直線都作爲半圓的下邊界,再枚舉所有點,則位於半圓區域內的點pj滿足以下兩個條件。

原创 一本通->提高篇->圖論-> 最小生成樹:

一本通: 提高篇: 圖論: 最小生成樹: 1486 【例題1】黑暗城堡 求最短路徑生成樹,用最短路算法求出最短路後,找到最後dis數組,遍歷每條邊上找到對應成立dis[]的度數(個數),再用乘法原理求出結果。 #include<b

原创 1553:【例 2】暗的連鎖 樹上差分

題目鏈接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1553 差分能夠更好的解決區間問題。 在講樹上差分之前,首先需要知道樹的以下兩個性質: (1)任意兩個節點之間有且只有一條路

原创 PAT 甲 1131 Subway Map (30 分)

1131 Subway Map (30 分) 題目大意: 給一張地圖,無向,給出n個行線,起點終點,不同行線要通過中轉站轉車,問最少經過多少站到達,如果站數相等,再根據最少轉車次數判斷。 要求輸出站數,和每次轉車的行線,這條行線的

原创 Bellman_Ford算法 SPFA算法

用spfa 算法求關於有負權邊的最短路。 每次從隊列中取出一個節點X,遍歷與X相通的Y節點,查詢比對  Y的長度 和 X的長度+ X與Y的長度             如果X的長度+ X與Y的長度 > Y的長度,說明需要更新操作。    

原创 codeforce 586 E Tourism

傳送門 題目大意: 給n個點和m條邊,給n個點的權值。 給你一個起點,s。現從s點出發,經歷一些點,並加上對應的點的權值。 條件:同一邊不能連續走兩次,但是同一條路是可以走多次的。 所以就是對雙連通分量進行縮點,再考慮權值問題(樹

原创 倍增求lca

倍增求lca 模板 求最近公共祖先lca(Least Common Ancestors),什麼是公共祖先,給定一棵樹,若節點z即使節點x的祖先,也是節點y的祖先,則稱z是x,y的公共祖先,在x,y的所有公共祖先中,深度最大的節點稱

原创 嚴格次小生成樹 講解+模板

瞭解次小生成樹(嚴格次小生成樹) 之前,需要先了解前置知識。 最小生成樹:https://blog.csdn.net/A_Pathfinder/article/details/88125032 最近公共祖先 :https://bl

原创 判斷兩直線相交 poj 2653

傳送門 題目也就是讓我找到在最上面的棍子。 枚舉棍子i上方的每根棍子j(i+1≤j≤n),若其中任何一根棍子與棍子i相交,則說明棍子i被上面的棍子壓住了,直接判斷棍子i+1;若棍子i未與上方的任何一根棍子相交,則棍子i屬於最上面的棍子。

原创 2_SAT

2_SAT 有N個變量,每個變量只有兩種可能的取值。再給定M個條件,每個條件都是對1兩個變量的取值限制。求是否存在N個變量的合法賦值,使M個條件均被滿足。 我們可以把此類問題轉換成統一的形式:若變量AiA_iAi​賦值爲AipA_

原创 一本通-> 提高篇-> 圖論-> 強聯通分量

一本通: 提高篇: 圖論: 強聯通分量: 1513:【 例 1】受歡迎的牛 受歡迎的奶牛隻有可能是圖中唯一的出度爲零的強連通分量中的所有奶牛,所以若出現兩個以上出度爲0的強連通分量則不存在明星奶牛,因爲那幾個出度爲零的分量的愛慕無

原创 一本通->提高篇->圖論->割點和橋:

一本通: 提高篇: 圖論: 割點和橋: 1520:【 例 1】分離的路徑 題意:如何把有橋圖通過加邊變成邊雙連通分量 如果葉子數(縮點後度爲1的點)爲1,則至少需要添加0條邊; 否則爲(葉子數+1)/ 2; #include<bi

原创 歐拉路

歐拉回路,也就是著名的哥尼斯堡七橋問題,也成一筆畫問題。 問題描述:是否可以找到一種方案,使得人們從自己家裏出發,不重複走每一座橋,然後回到家中? 在瞭解歐拉回路前,我們再瞭解一下知識。 有向圖、無向圖、混合圖的歐拉通路、歐拉回

原创 1496:【例 3】架設電話線

傳送門 這裏給出3種方法求解(因爲感覺都蠻有用的)。 第一種:dp+最短路 dp[i][j]:從1號點到i號點已經用了j次變成0邊後路徑上的最長邊. 若有一跳從u到v長度爲w的邊,則 d[v][num] = max(d[u][num],w

原创 1495:【例 2】孤島營救問題

傳送門  //因爲一本通上有一個測試點錯了,所以給洛谷的測試 這題大部分都是用bfs + 狀壓去做,但是一本通裏把這題放在了最短路上,雖然用最短路的時間空間都比bfs要差,但是這是一道很好的去訓練分層最短路的題。 BFS版: bfs把每個