簡要概括:
就是將資料封裝在了一棵樹裡,每次查詢只需要將每個節點的父親標記為根節點就好了!
比如:
就變成了:
0;}解釋:
詳情請見:
kmp專題
#include
#include
#include
#include
using
namespace
std;
const
int n=100005;
int p[n];
char s[n],t[n*10];
void getp(int n)
p[i]=++j;
}}int kmp(int n,int m)
j++;//ºóé¨ò»î»!!
if(j==n)
}return ret;
}int main()
}
解釋:
詳情請見:
最短路解釋:
就是利用二分的思想,對於一串數字的左邊經行排序,右邊也同時進行排序,最後再用o(n)的複雜度去合併數字,所以總的複雜度是o(n logn)!
**:(照著別人的**打了一遍…)
#include
#include
#include
#include
using namespace std;
const int n=100005;
intdate[n],result[n];
void merge(int *date,int start,int end,int *result)
while(left_index < start+left_length)
result[result_index++]=date[left_index++];
while(right_index < end+1)
result[result_index++] =date[right_index++];
}void merge_sort(int *date,int start,int end,int *result)
if(0==end-start) return ;
else
}int main()
1.學會很好的初始化,一定要注意資料範圍在判斷
因為初始化實在是太重要了!不然程式怎麼錯的都不知道!
2.可以根據資料範圍來判斷演算法的複雜度
3.就是資料初始化的問題導致
4.學會簡化問題
5.不去緊張和看重rank比分!
6.加強數學證明題的思路
7.慢慢來,不著急
8.學會向上取整 ,不要每次都錯在的了最小的細節上!
9.學會推數學公式,但是不要取模太小了!
10.穩住,比賽的時候最好不要著急,因為你如果急了,你真的就完蛋了!
11.數論知識!
12.愛上資訊,不怕難!
賽事總結 賽時 8 AGC 027
日常agc坑 還好能漲rating 傳送門 感覺像打多校賽一樣,應該多關注一下排名 考試的時候為了避免影響心態,管都沒有管排名,就在那裡死坑b題。最後還剩十幾分鐘的時候發現大家都把c題ac了,b題空了一大堆。後來事實也證明了c題比b題簡單。題意 老師要將x顆糖分給n個孩子 恰好分完 當第i給孩子得到...
20201122 賽事紀錄
本校和某外校的演算法協會,聯合一商業公司舉辦的一場比賽,題目質量還算來勁.賽前還貼心的給新手們來了乙份guide.docx 讓我算協人來教你動態規劃.jpg 不過好像對於c都沒學完的新手們並不是那麼友好.18 00到22 00,雙人組隊,類acm賽制,於是我和上一次去打比賽的隊友一起報了名.結果隊友...
裡約賽事,今日看點
裡約賽事,今日看點 出彩中國隊 尤浩和劉洋 在體操吊環比賽中都有奪牌實力,尤浩是去年世錦賽吊環第二名,劉洋是2014年世錦賽的吊環金牌得主。男子舉重105公斤級,身高1公尺87,他將成為中國男舉亮相奧運賽場最高 最壯的選手,由於主要對手哈薩克人伊林被禁賽,他的奪冠機會大增。男子 跳遠賽場,今年狀態不...