xmu1166求第k小數 樹狀數組/線段樹

 http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1165 題意:有3中操作1 a將a加入,如果a已經存在忽略該操作2 a將a刪除,如果不存在忽略該操作3 a查詢第a大的數,不存在輸出-1 分析:思想和pku2182一樣,比2182簡單。。。直接線段樹或樹狀數組+二分。。。 其實從這個角度而言,樹狀數組也可以求最大最小值了。。。呵呵,求最小值就是第1小值嘛。。。 代碼:#include <stdio.h>#include

hdu3972 雜-2

http://acm.hdu.edu.cn/showproblem.php?pid=3972題意:輸入n(300000),然後輸入n個數4位元組以內的正整數,輸入保證每次取掉3個相同的數之後剩下2個數。。。從小到大輸出這兩個。。。問題的關鍵在於記憶體限制在1M以內,也就是意味著你不能全部儲存下來。。。悲劇。。。分析:喵嗚大神就是牛逼啊。。。記錄32位每一位出現的次數,以及每兩位之間對應出現的次數a[i][j]。。。求完後都對3取餘,很明顯,為2的就是分給這剩下的兩個數,而為1的就不好分了,這時候

hdu3911線段樹

http://acm.hdu.edu.cn/showproblem.php?pid=3911多校(8) 題意:給定一個數組元素只有0和1,然後有兩種操作,1 i j表示更改[i, j]的所有元素,0 i j表示求[i, j]裡面的最長的連續1的串的長度。。。 分析:設定了巨多的參數啊。。。維護了某一段的最左端連續的0個數,連續的1個數,最右端連續0的個數連續1的個數,整段最長的連續0的個數和最長的連續1的個數,然後設定一個標記值cnt,記錄該節點更新的次數,每次更新只更新到段,記錄到cnt裡面,

pku3415尾碼樹組-5

 http://poj.org/problem?id=3415題意:給定k和兩個串A,B,求長度不小於k的A和B的相同字串的對數。。。如1 xx xx總對數有A1-B1 A1-B2 A2-B1 A2-B2 A1A2-B1B2總共有5對。。。 分析:這是尾碼樹組挺難的一題了,先求出height數組,然後我是先將A,B的各自內部的對數求出來,然後再把兩串分割串連起來算總的,減去前面兩次的,效率稍微慢了點。。。對每一個串求這個對數也不好求,其實我們是要求所有的連續的>=1的對數+連續的>=

zoj3261 並查集—略有變形

題意:有n個星球,每個星球有一定的power值,某些星球是直接或間接相連的。。。當某個星球想求助時會找到相連的裡面的power值最大而且大於自己的一個星球。。。先在給定這些power值並給定兩兩相連的資訊,然後又q個操作,destroy a b是刪除a b直接相連的邊(保證存在),query a求向誰求助,如果不能求助輸出-1

zoj3395尾碼樹組-2

 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3971題意:求一個數組中重複出現至少m次的最長字串。。。 分析:二分答案進行判斷即可。。對每個判斷的長度,只需要看連續在這段裡面的height>=mid的個數是不是>=m-1即可。。ps:本題刷到rank1了,呵呵。。 關鍵代碼:240msvoid print(int mid){int i, j, mx, right=-1;for(i=1; i<=len;

pku2406 kmp/尾碼數組

 Pku2406 求一個串最多可以分成幾個首碼串的k次串連。。。如abab最多可以由ab兩次串連。。。  這題本來是kmp的一道水題,但也可以用尾碼數組來做,先求出height數組,然再維護所有lcp(rank[0],

pku1743尾碼樹組-4

 http://poj.org/problem?id=1743題意:給定n個數字,求著n個數位一個“子串”,保證這個子串在原數組中出現了至少2次,且這兩次不不出現重疊(而且這兩個子串不是完全相同,而是可以有一定的“跳躍”,比如1 2 3 4與7 8 9

pku1509 最小標記法/尾碼數組

  求一個串(可以迴圈,即前面的字元可以添加到末尾)的最小字典序表示序列,且保證首位置下標最前。  此題用最小標記法很簡單,先將串加倍,然後最小表示即可。此題也可以用尾碼數組,先將串加倍,只需要找到height數組中最靠前且該尾碼長度夠,然後再找其中下標最靠前的。。  #include<iostream>using namespace std;const int N=20010;char s[N];int n;#define _min(i, j) i<j?i:j#define

spoj687尾碼數組-5

http://www.spoj.pl/problems/REPEATS/題意:給你一個串,求這個串中所有連續重複子串重複的最大次數。。如cababab,為3。。。分析:這題純粹看的羅大牛的論文的,還沒怎麼看懂,還百度了報告。。我是想不到方法了。。只考慮重複次數>=2的情況,枚舉連續重複子串的重複那部分的長度,對長度為L時,則[0, L-1] , [L, 2*L-1] , [2*L,

hust1433-樹狀數組-2

http://acm.hust.edu.cn/JudgeOnline/problem.php?id=1433題意:給定一個1...n的排列,對i<=k<j. ans[k]為a[i]>a[j]的對數,求ans[1...n-1]。。。 分析:用樹狀數組,求出k位置前面>=a[k]的和個數ll[k]後面<a[k]的個數rr[k],ans[k] = ans[k-1] + rr[k] - ll[k]+1還有大牛直接用一個公式做的:ans[k] = ans[k-1] +

hdu3932 最小圓覆蓋-類比退火實現-3+

 http://acm.hdu.edu.cn/showproblem.php?pid=3932題意:給一堆點,求一個點到這些點的最遠距離最小。。。精度0.1即可 分析:此題本來是最小圓覆蓋的模板題。。。我一開始就想到費馬點的類比退火去了。。花了一個下午沒寫出來。。。。最開始是用4個方向的搜尋判斷減小步長的方式,後來改到8個方向還是不行,精度都調到10e-9都不行。。。最後改成對當前點周圍很多點(貌似用了60個)進行判斷精度只需要到0.1就過了。。。表示本人無法解釋原因。。。以後不敢寫類比退火了。

Codeforces Beta Round #69 (Div. 2 Only) E題

題意:給定一棵樹,每個節點都有一個權值,給定出發點a,從a開始,到達每個點每個點就獲得該點的一個權值(該節點相應減少一個),問最多可以得到多少值。。。分析: dfs,將根節點的值增加1,然後對每顆子樹的操作都一樣,每次選擇子樹可能獲得更多的優先選擇,最後父節點和子節點可能還有剩餘,還可以來回走動。。。無語說是樹形dp。。額。。。代碼:寫得好戳啊。。。因為少了幾個int64,wa了一大片。。。#include

hdu1004 map水題

【題目連結】http://acm.hdu.edu.cn/showproblem.php?pid=1004 【題目大意】給定n個串,求出現次數最多的串,要求輸出該串; 【分析】map水題,記錄串,串每出現一次,map值便加1,具體見代碼 【代碼】 /*2011-04-25 14:14:43 Accepted 1004 15MS 284K 983 B C++ */#include<stdio.h>#include<iostream>#include<algorithm&

hdoj 4267 – 線段樹

2012長春賽區網路賽。。。A題http://acm.hdu.edu.cn/showproblem.php?pid=426701給數組Ai  有初始值  現有兩個操作1.給區間[a,b]中滿足(i - a) % k == 0的每一個Ai的值加c2

hdu3902計算幾何。。暴力

  http://acm.hdu.edu.cn/showproblem.php?pid=3902 題意:20000各點的簡單多邊形,判斷是不是對稱的。。。 分析:比賽的時候一直不敢做,雖然看到那麼多人出了,但也有好多tle。。。枚舉對稱軸的方法被我們否定了。。然後無語說了一種枚舉對稱點的方法,我後來發現其實沒有任何最佳化。。。我寫得杯具,(對應該對稱的點求其斜率是否與確定的亮點相同,然後再判段兩中點的線段斜率是否與原斜率垂直)最後tle了n久啊。。。。。miaowu一上場幾下就寫了個枚舉對稱軸的

Cf 99 Div.2

      題目描述各種不好,文章裡有很多罵的話,我B題,D題看不懂,C題猜的,E題發現會做,但是沒有時間了,賽後ak。A、直接累加就可以了。B、題目描述的不好。C、題目描述的不太好,算是水題D、類比,貪心,問給數字串x,要怎麼把兩個x排的字元排列使得兩個串相加(做十進位加法),末尾0最多。必須是這種形式  ...12800.....87200..即0有多的放最後,然後是湊一個10,然後前面全部是湊9,然後最前面隨便怎麼分。注意

Cf 103 div.2

A題It's clear that the leftmost soldier with the maximum height should be the first and the rightmost soldier with the minimum height should be the last. Thus we will minimize the number of  swaps. And the answer is number of leftmost soldier with

hdu3974 線段樹-2

http://acm.hdu.edu.cn/showproblem.php?pid=3974題意: 給定一棵樹,50000個節點,50000個操作,C x表示查詢x節點的值,T x y表示更新x節點及其子節點的值為y。。。分析: 很明顯的時間戳記類型線段樹。。。通過一個dfs給樹中各節點重新分配一個遍曆的序號。。寫的過程中寫著寫著寫亂了,所以寫了好久,甚至一度以為是錯的。。。悲劇,還是太水啊。。。ps:此題的資料太弱了實際上亂暴力都可以過。。。.。。。。代碼:#include

rqnoj 460單調隊列-1

http://www.rqnoj.cn/Problem_460.html題意:n個人站成一隊,每兩個人之間如果沒有比一個高的就說明二者能互相看到,問有多少對人能互相看到對方。。分析:單調隊列,沒的說。。。但是相同高度要特殊處理一下, 這裡我是將連續的相同高度的存到一起並記錄個數。。連續相同高度的這一堆肯定互相能看到,而且都能看到前面和後面的。。。代碼:#include<iostream>using namespace std;const int N=600010;int n,

總頁數: 61357 1 .... 19448 19449 19450 19451 19452 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.