原创 在鄰接矩陣中的DFS與BFS的實現

大致思路: 對於已經找到的 x,y 在矩陣中進行行遍歷和列遍歷。遇到存在的邊則進行BFS或DFS 代碼: p.s 代碼中均是以無向圖爲例 BFS #include<bits/stdc++.h> using namespace st

原创 5.27計蒜客網絡初賽A題 騰訊課堂的物理實驗

其實這是一道很簡單的題,但沒有想到trick,導致寫的很複雜,其實有很簡單的做法 題面: 在騰訊課堂的物理課上,進行了一個有趣的物理實驗。 在一個長度爲 LL 米的光滑軌道上,小車 A 在 0 時刻以 1m/s 的速度從左端出發向

原创 一般迷宮問題的求解

1.問題描述: 以一個m*n的長方陣表示迷宮,0和1分別表示迷宮中的通路和障礙。設計一個程序,對任意設定的迷宮,求出一條從入口到出口的通路,或得出沒有通路的結論。 2.基本要求 (1)首先實現一個以鏈表作存儲結構的棧類型,然後編寫

原创 UVA 839 Not So Mobile 【遞歸+樹】

題目鏈接: https://cn.vjudge.net/problem/UVA-839 題目大意: 有一個天平。每次給4個數字,分別是天平左邊的重量, 力臂,右邊的重量,力臂。如果左邊重量爲0,則左邊下面就還有一個天平,具體情況由

原创 Dijkstra算法的實現及原理

算法用處與基本思想 Dijkstra算法的作用是求指定點到圖中任何一點的最短路徑。 其基本思路與BFS(深度優先搜索)有些類似,但不同的是BFS用的是一般隊列,也就是嚴格的先進先出。而Dijkstra算法用到的則是優先隊列。 什

原创 【編譯原理】FIRST集和FOLLOW集

文章目錄龍書上的定義:FIRSTFOLLOW自己的理解FIRSTFOLLOW例子推導FIRST推導FOLLOW 龍書上的定義: FIRST 如果x是一個終結符,則FIRST(X) = X 如果x是一個非終結符,則X→Y1Y2Y3⋯Yk

原创 碼分複用CDMA的原理

碼分複用CDMA的原理 感性理解: ​ 可以感性的理解爲:我只接受我所期望的信號類型,並且能夠通過一定的方式將多個信號源分離出來。 工作原理: ​ 每一個比特時間再被細分爲m個更短的時間間隔。每個時間間隔被稱爲碼片,m個碼片組成一個碼

原创 6.29 CodeForce 818 A/B解題報告

A.Diplomas and Certificates 題面: There are n students who have taken part in an olympiad. Now it’s time to award the s

原创 HDU 5961&AOJ 821 傳遞

題面: Problem Description 我們稱一個有向圖G是傳遞的,當且僅當對任意三個不同的頂點a,,若G中有 一條邊從a到b且有一條邊從b到c ,則G中同樣有一條邊從a到c。 我們稱圖G是一個競賽圖,當且僅當它是一個有向圖且它

原创 CodeForce 837 A/B/C解題報告

A Text Volume 題面: You are given a text of single-space separated words, consisting of small and capital Latin letters.

原创 HDU1166 疑兵佈陣 【線段樹】

題面: C國的死對頭A國這段時間正在進行軍事演習,所以C國間諜頭子Derek和他手下Tidy又開始忙乎了。A國在海岸線沿直線佈置了N個工兵營地,Derek和Tidy的任務就是要監視這些工兵營地的活動情況。由於採取了某種先進的監測手段,所以

原创 組合數求模模板

對於兩個較小數的組合數求模的方法可以利用遞推公式+記憶化搜索得到 需要用到時提前預處理一下,然後直接從數組裏取值就可以了 int C(int n,int k) { if(k>n) return 0; ret

原创 [HihoCoder-1185] 連通性·三 【tarjan+縮點】

題面: 描述 暑假到了!!小Hi和小Ho爲了體驗生活,來到了住在大草原的約翰家。今天一大早,約翰因爲有事要出去,就拜託小Hi和小Ho忙幫放牧。 約翰家一共有N個草場,每個草場有容量爲W[i]的牧草,N個草場之間有M條單向的路徑。 小Hi和

原创 HDU1754 I HATE IT【線段樹】

題面: Problem Description 很多學校流行一種比較的習慣。老師們很喜歡詢問,從某某到某某當中,分數最高的是多少。 這讓很多學生很反感。 不管你喜不喜歡,現在需要你做的是,就是按照老師的要求,寫一個程序,模擬老師的詢問

原创 tarjan算法求連通分量+縮點後重新建圖

#include<bits/stdc++.h> using namespace std; const int maxn=2e4+7; vector<int> g[maxn]; vector<int> newp[maxn]; int dfn