似乎應該說些什麼——記人生第一場regional

      10月24號晚上9點,到學校了。四天的北京之旅宣告結束。流水賬吧:         21號下午5點多到達住的地方。很偏僻,不過還算乾淨。和輕工的盆友們住一起,蠻好。我們去的時候好多隊都已經簽過到領過衣服了,看了下,這個地方住了十幾個學校吧。         我和老師住一個房間,二樓,黨和小白一起住四樓。         那幾天真糾結,我總以為我在四樓住,但是確實我們住二樓。每次從黨他們屋出來我都想去四樓,囧。        

HDOJ-4006/(大連網賽1006)- The kth great number 剖析

本文不想廢話,直接上多種做法。題意:固定的k,動態加點,動態詢問第k大數。一、樹狀數組+二分這裡有兩種做法,一種是二分sum(i),另一種是利用二進位二分逼近k。樹狀數組常用來處理區間點的統計情況,這裡n沒有規定大小(理論上是int32),但是操作次數n是小於1000,000的,所以可以先進行離散化來儲存1000,000個點值(我不知道這是不是所謂的離散化,因為點本身是整數,但是,這至少是一種散列、一種映射,異曲同工的)。具體操作為,先讀入範例中出現的所有點,然後排序,insert(

int float double 最大值,最小值

<limits>中沒有double的最大最小值。。。 如果輸出的比如%.100lf輸出2.23432432,沒有達到100位,則最後2後面不一定都是0。 原文見http://blog.csdn.net/ACb0y/archive/2010/03/01/5336822.aspx view plaincopy to clipboardprint?/* coder: ACboy date: 2010-3-1*/ #include

線段樹題目分類+簡單解釋

兩個斜杠是已經過的題線段樹//zoj 1610 線段覆蓋//poj 2777 線段覆蓋//poj 2528 需要離散化,建樹不同,需要處理不同->注意這組資料 3 1 10 1 3 6 10  the ans is 3.//hdu 1754 求區間最大值//hdu 1166 求區間和//hdu 1698 成段更新//poj 3468 成段更新//ural 1019 覆蓋加統計最長同一個顏色//zoj 2301 和上一題差不多,但是這個染色染的是點,注意染色為空白的狀況//poj 3264

劃分樹學習(poj 2104,hdu 3473)

線段樹一維的刷差不多了,求區間第K數一直卡著。劃分樹和歸併樹都可以求,比較了一下時間效率,劃分樹比歸併樹快了很多,而且POJ有個求區間第K數的題用歸併樹居然過不去。鑒於時間短,我決定把劃分樹給弄明白= =。。借用下小HH的圖。劃分樹和歸併樹都是用線段樹作為輔助的,原理是基於 快排 和 歸併排序 的。劃分樹的建樹過程基本就是類比快排過程,取一個已經排過序的區間中值,然後把小於中值的點放左邊,大於的放右邊。並且記錄d層第i個數之前(包括i)小於中值的放在左邊的數。具體看下面代碼注釋。關鍵是詢問過程,

The 8th Zhejiang Provincial Collegiate Programming Contest / D – String Successor

返回目錄 悲劇地wa了,不知道哪錯,而且代碼越改越噁心不喜勿看=。= ,知道哪錯的麻煩告訴我一下O(∩_∩)O...① 未改#include<cstdio>#include<cstring>using namespace std;inline int Rint() { int x; scanf("%d", &x); return x;}#define MAXN 110unsigned char s[MAXN];int n;int m;int isan(int

計算幾何題目分類+簡單解釋

兩個斜杠是已經過的題,四個斜杠的是在ZOJ,POJ都有的題。三維凸包poj 3528 2974hdu 3662//ECNU 1624 求交集多邊形面積 求倆凸多邊形面積。水題。可用半平面交,也可以自己YY做。poj 1259 最大內部凸包hdu 3644 多邊形內能放進最大圓半徑(可能是凹的,二分+判斷)//hdu 1086 //hdu 3982 半平面交+求凸多邊形和圓的面積交//hdu 4063

POJ 3415 Common Substrings(尾碼數組+單調棧)

轉載請註明出處,謝謝http://blog.csdn.net/acm_cxlove/article/details/7854526      

[2-sat][topsort輸出解] POJ 3648 Wedding

2-sat 基本是有三類題型,一種只判定解是否存在,一種判定+二分答案求最佳,一種判定解並輸出其中一組解。Wedding 這題是典型的第三種類型。ps. 最近太忙了,這題是前天A的,暫時先要把 2-sat 放一放。然後到時候再回來整理下,形成要用到的模板帶出去就行了,如果考到就是看臨場建圖了。於是這題先記錄下來。另外最後輸出還是有點疑問的,mark一下,輸出的新娘一邊,是刪除的scc點,還是選擇的scc點,即 select[],是一定的嗎?跟拓撲的第一個順序有關?AC代碼://POJ-3648

獲得第k小元素

分治,關鍵是用到快拍的時候的partation函數#include<iostream>#include<hash_map>#include<string>#include<iterator>#include<algorithm>using namespace std;const int maxn=100;int tab[maxn];template<class T>int random_partition(T*

[遺傳演算法]冰與火之歌

[題目描述]在著名遊戲“冰與火之歌”中英雄們親自參戰了!英雄一開始有HPH點生命值與MPH點魔法值,英雄們能夠使用不同的技能,你的英雄會三種技能:雷霆之怒、混沌轉移和天使之心。英雄要打一群怪獸,每隻怪獸一開始有HPM點生命值,這一群怪獸一開始有NM只,它們的總生命值就有HPM×NM點,隨著戰鬥的進行,怪獸群的總生命值減少。假設當前怪獸群有H點總生命值,那麼還存活的怪獸個數為H/HPM取上整。戰鬥在一個一維的包含N+1個格子的戰場上進行,格子從0開始編號,你的英雄一直在0號格子不動,怪獸們一開始在

【數論】一個公式,a^p mod m,求逆元

//擴充歐幾裡得long long exgcd(long long a,long long b,long long &x,long long &y){if(a==0){x=0;y=1;return b;}long long g=exgcd(b%a,a,x,y);long long tem=y;y=x;x=tem-(b/a)*y;return g;}long long inv(long long a,long long n)//求逆元{long long

堆排序 max_heapify 調整堆函數

有點時間 想研究一下堆排序,看了一下演算法導論,現在記錄一下max_heapify() 函數是堆排序中的一個非常重要的方法 #include<iostream>using namespace std;int a[15]={0,27,17,3,16,13,10,1,5,7,12,4,8,9,0};int size=15;int length=15;int left(int i){return i*2;}int right(int i){return i*2+1;}int parent(

人工智慧作業 三個野人和三個傳教士

/*三個野人,三個牧師過河問題,要求任意時刻野人人數不能多於牧師的人數。演算法:廣搜窮舉。A*不知道怎樣寫。。。程式實現了選擇走最少次數的一個解,並不是所有的可行解。*/#include<iostream>#include<deque>#include<algorithm>using namespace std;struct point{int a,b,s,f;//a,表示出發岸牧師的人數,b表示野人的人數,對岸的人數可以通過簡單的運算得到。

單源最短路徑演算法 Bellman-Ford && SPFA 及 最短路演算法統一歸納

為避免各種求最短路的方法混淆,開始之前先做個歸納。 ① BFS - 無權圖 (有向或無向,有環或無環)- 對於樹的bfs,無需判重,因為根本不會重複。對於圖的bfs,要有vis[]進行判重,不然一個點可能被多次拓展,極大地浪費時間空間。② dp - 有向非循環圖(DAG,帶權或不帶權)- 很多問題可以轉換成DAG上的最短路(當然還有最長路)問題,這個時候,一個點就是一個狀態,根據狀態轉移方程計算,屬於最佳化問題。對於這裡非隱式的圖(存在顯式結點的),是可以用下面其他最短路演算法的。③

鄭大第四屆校賽~!SOWHAT!!

 昨天。呃。我用現在時吧,呵呵,今天校賽。    早上快七點半起來,拿著書、印的模板、印的代碼(事實證明,都是累贅,看都沒看)神馬的就往中心樓趕。我們隊的小盆友給我發簡訊問我在哪,真不好意思說我剛起……嘿嘿。今天早上好冷啊,想起去年的這個時候,我們在電腦中心樓參加南航的一個活動,旁邊就是等待比賽的同學們~當時就下決心,明年我一定要來!!!當時還在貼吧立帖為證了~~嘻嘻。    共計179個隊,500+人,強大吧!我們SOWHAT,team18,一號機房。    今年,看到了好多10級的小盆友,協

UVA 116 – Unidirectional TSP

題目大意:輸入一個m*n的矩陣,按每步走右上、右下、正右(三種選擇)的方法,完成從第一列(任何行)走到最後一列。每步的消費是輸入的矩陣元素值。注意,規定最後一行跟頭一行是相鄰的(即可以相互走到)。 要求輸出 字典序最小(若有多種)的路徑,路徑用每步所在行表示。行列都從1開始計算。輸入 1<=m<=10, 1<=n<=100。輸出結果不超出int32。 注意:①A path starts anywhere in column 1.         ②

DIY群賽 1004

#include<iostream>#include<cmath>#include<cstdio>#include<cstdlib>using namespace std;__int64 f_min(__int64 x,__int64 y){ return x>y?y:x;}__int64 f_max(__int64 x,__int64 y){ return x<y?y:x;}class point{private:

數值統計題解

【題目描述】Joy是一個數學系的學生。老師給了她一個數列,數列中的每一個數都是整數。她的任務是統計數列中前N項的取值。由於老師給出的N非常大,使得Joy根本無法自己去數。這就讓她束手無策了。在萬般無奈時,她突然想起住在隔壁的你是程式設計方面的高手,所以她馬上跑來向你求助。為了不使她失望,你一口就答應了她的請求。她告訴了你這個數列的遞推公式,她希望你能編一個程式:對於任意的N和K,能夠快速地統計出該數列的前N項中值等於K的項的個數。這個數列是:a1=0   a2=1a2n+1=an+1-2   

[三元組]題解

題目描述:      給出n個形如(i,j,k)的三元組      定義一組三元組之間的差為:      D(Ta, Tb) = max{Ia−Ib, Ja−Jb, Ka−Kb}−min{Ia−Ib, Ja−Jb, Ka−Kb}      求所有對三元組的差的總和(算了D(Ta, Tb)就不用算D(Tb, Ta)了)資料範圍:      n<=500000時限1s[題解]          首先,對任意三元組(a,b,c)我們有:max(a,b,c)-min(a,b,c)=(|a-b|+|

總頁數: 61357 1 .... 19667 19668 19669 19670 19671 .... 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.