1、 回顧zucc藍橋杯熱身賽-1中a、b、c題中涉及的知識點
2、 補題-----zucc藍橋杯熱身賽-1中d題
思維題,做題要快
題目總體難度不難,主要是讀入的時候怎樣處理檔案讀入型字串
該題目的輸入格式:
每個輸入檔案包含若干行字串,字串有大寫的w、l和e組成。其中e表示比賽資訊結束,程式應該忽略e之後的所有內容。
輸入格式:
wwwwwwwwwwwwwwwwwwwwwwlwe
// freopen("in.txt","r",stdin); //用freopen判斷測試用例
while(~
scanf
("%[^\n]\n"
,ch+len)
)//通過這樣的形式就可以把檔案中一行行的字串都讀入到ch這個總的字串中了
1、 回顧了很久沒用的 sprintf和sscanf函式的使用
for
(int i=
0;i<
10000
;i++)}
else
}}
2、 回顧了lower_bound和upper_bound函式的使用
int ta=
lower_bound
(vec.
begin()
,vec.
end(
),a)
-vec.
begin()
;//通過減去起始位置的方法,ta得到的是對應在vec裡的位置下標
int tb=
upper_bound
(vec.
begin()
,vec.
end(
),b)
-vec.
begin()
;// int tb=lower_bound(vec.begin(),vec.end(),b)-vec.begin();
printf
("%d\n"
,tb-ta)
;
lower_bound和upper_bound均利用了二分查詢演算法,在乙個陣列中進行查數,通過陣列下標相減的方法就可以知道對應區間存在的個數了。
lower_bound(begin,end,x)-陣列名。從begin位置到end-1位置,查詢第乙個大於等於x的數的位置。如果不存在,返回的是end
upper_bound(begin,end,x)-陣列名。從begin位置到end-1位置,查詢第乙個大於x的數的位置。如果不存在,返回的是end
這裡要特別注意,為了防止用lower_bound/upper_bound查詢時會有跑出邊界的情況發生,在放入第乙個數之前在vector裡放入乙個最小臨界點,在放完所有數之後在vector裡放入乙個最大臨界點。
vec.
push_back(0
);//插入最小臨界點
for(
int i=
0;i<
10000
;i++)}
else}}
vec.
push_back
(100000000);
插入最大臨界點
方法一:暴力+動規,主要注意的是,在dfs深蒐時要考慮清楚退出時的情況,運用好標記。
#include
using
namespace std;
int n,m,x,y,z;
int c[
100007
],mi[
100007
],dp[
100007];
vector<
int> vec[
100007];
void
dfs(
int x,
int pr,
int min)
//更新操作,繼續遞迴
int max=
max(dp[pr]
,c[x]
-mi[x]);
//陣列dp動態規劃,求到達該節點的最大差額
if(dp[x]
//更新操作,繼續遞迴
if(bz==1)
return
;//該題目中存在環路,為了防止在dfs環路中爆棧,遇到訪問過的節點就退出
for(
int i=
0;i.size()
;i++)}
intmain()
for(
int i=
0;imemset
(mi,
0x3f3f3f3f
,sizeof
(mi));
dfs(1,
0,0x3f3f3f3f);
printf
("%d\n"
,dp[n]);
}
方法二:兩遍spfa
方法三:tarjan縮點+拓撲排序+dp
具體題解洛谷上有,明天的第一項任務就是了解spfa和tarjan縮點咯
ACM暑期集訓2
今天主要學習了線性dp和揹包問題以及快速冪。1.整數快速冪 這個直接粘上 int qpow int x,int n res res res n n 1 return ans 2.矩陣快速冪 主要就是將整數快速冪的乘法運算換做矩陣的乘法 下面的 是方陣的快速冪 const int n 10 int t...
ACM暑期集訓4
今天主要學習了線段樹,樹狀陣列,st表,差分,分塊和樹剖 好吧,這個已經沒聽懂了 1.線段樹 線段樹涉及許多應用和思想,以下是今天所學 線段樹主要用於處理一段連續區間的插入,查詢,統計,查詢等操作。複雜度 設區間長度是n,所有操作的複雜度是logn級別。性質 線段樹是平衡的2叉樹,最大深度logn ...
ACM暑期集訓5
今天主要學習力圖論基礎和最短路徑 1.圖論基礎 1 鄰接矩陣存圖 w i j 表示以ij為頂點的邊的權值 const int n 105,inf 9999999 int dis n w n n vis n n,m 鄰接矩陣存圖 for int i 1 i n i for int i 0 i2 鄰接表...