資源簡介
ACM2008國家集訓隊論文,有益于你對各個算法的學習,升華
代碼片段和文件信息
#include?
#include?
#include?
#define?MAXN?1000
#define?MAXM?1000
#define?Eps?1e-8
const?int?dx[4]?=?{0?1?0?-1};
const?int?dy[4]?=?{1?0?-1?0};
int?N?M?P?Q;
int?map[MAXN][MAXM];
int?size[MAXN*MAXM]?pos[MAXN*MAXM]?bl[MAXN*MAXM]?fa[MAXN?*?MAXM];
double?V[MAXN*MAXM]?ans;
int?list[MAXN*MAXM][2];
int?bfs(int?stx?int?sty?int?ID?int?height)?{
??int?head?=?0?tail?=?1?x?y;
??bl[map[stx][sty]]?=?ID;
??list[0][0]?=?stx;?list[0][1]?=?sty;
??while?(head?????size[ID]?+=?height?-?map[list[head][0]][list[head][1]];
????for?(int?i?=?0;?i?4;?i?++)?{
??????x?=?list[head][0]?+?dx[i];
??????y?=?list[head][1]?+?dy[i];
??????if?(x?>=?0?&&?x?=?0?&&?y?????????list[tail][0]?=?x;
????????list[tail][1]?=?y;
????????bl[map[x][y]]?=?ID;
????????tail?++;
??????}
????}
????head?++;
??}
??return?0;
}
int?pour(int?k)?{
??int?cnt?=?0?t;
??int?px?=?pos[k]?/?M?py?=?pos[k]?%?M;
??bool?lower[4];
??double?rest?=?0;
??memset(lower?0?sizeof(lower));
??for?(int?i?=?0;?i?4;?i?++)?{
????if?(px?+?dx[i]?0?||?px?+?dx[i]?==?N?||?py?+?dy[i]?0?||?py?+?dy[i]?==?M)?{
??????cnt?++;
????}?else?{
??????t?=?map[px?+?dx[i]][py?+?dy[i]];
??????if?(t?????????cnt?++;
????????lower[i]?=?true;
??????}
????}
??}
??for?(int?i?=?0;?i?4;?i?++)?{
????if?(px?+?dx[i]?0?||?px?+?dx[i]?==?N?||?py?+?dy[i]?0?||?py?+?dy[i]?==?M)?{
??????ans?+=?V[bl[k]]?/?cnt;
????}?else?{
??????t?=?map[px?+?dx[i]][py?+?dy[i]];
??????if?(lower[i])?{
????????V[bl[t]]?+=?V[bl[k]]?/?cnt;
??????}
??????if?(fa[bl[t]]?==?k?&&?V[bl[t]]?>?size[bl[t]])?{
????????rest?+=?V[bl[t]]?-?size[bl[t]];
????????V[bl[t]]?=?size[bl[t]];
??????}
????}
??}
??V[bl[k]]?=?rest;
??return?0;
}
bool?can(int?x?int?y)?{
??if?(x?==?0?||?x?==?N?-?1?||?y?==?0?||?y?==?M?-?1)?return?true;
??for?(int?i?=?0;?i?4;?i?++)?{
????if?(bl[map[x?+?dx[i]][y?+?dy[i]]]?!=?-1)?return?true;
??}
??return?false;
}
int?main()?{
??int?v1?v2?v3?px?py?x?y;
??freopen(“fg.in“?“r“?stdin);
??freopen(“fg.out“?“w“?stdout);
??scanf(“%d%d“?&N?&M);
??for?(int?i?=?0;?i?????for?(int?j?=?0;?j???????scanf(“%d“?&map[i][j]);
??????map[i][j]?--;
??????pos[map[i][j]]?=?i?*?M?+?j;
????}
??}
??memset(bl?255?sizeof(bl));
??memset(fa?255?sizeof(fa));
??for?(int?i?=?0;?i?????px?=?pos[i]?/?M;
????py?=?pos[i]?%?M;
????if?(can(px?py))?{
??????bl[i]?=?P?++;
??????for?(int?j?=?0;?j?4;?j?++)?{
????????x?=?px?+?dx[j];?
????????y?=?py?+?dy[j];
????????if?(x?>=?0?&&?x?=?0?&&?y???????????fa[P]?=?i;
??????????bfs(x?y?P?++?i);
????????}
??????}
????}
??}
??scanf(“%d“?&Q);
??for?(int?i?=?0;?i?????scanf(“%d%d%d“?&v1?&v2?&v3);
????v1?--;?v2?--;
????V[bl[map[v1][v2]]]?+=?v3;
??}
??for?(int?i?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????7673??2008-02-02?15:05??國家集訓隊2008論文集\content.txt
?????文件??????24064??2008-01-22?07:55??國家集訓隊2008論文集\Day1\1.曹欽翔《數據結構的提煉與壓縮》\封面.doc
?????文件?????645632??2008-01-23?16:41??國家集訓隊2008論文集\Day1\1.曹欽翔《數據結構的提煉與壓縮》\數據結構的提煉與壓縮.ppt
?????文件??????30720??2008-01-21?14:50??國家集訓隊2008論文集\Day1\1.曹欽翔《數據結構的提煉與壓縮》\目錄.doc
?????文件?????677888??2008-01-21?14:51??國家集訓隊2008論文集\Day1\1.曹欽翔《數據結構的提煉與壓縮》\論文.doc
?????文件?????199407??2008-01-26?17:33??國家集訓隊2008論文集\Day1\10.俞華程《矩陣乘法在信息學中的應用》\slide.pdf
?????文件?????179455??2008-01-26?17:33??國家集訓隊2008論文集\Day1\10.俞華程《矩陣乘法在信息學中的應用》\矩陣乘法.pdf
?????文件???????2188??2008-01-06?17:15??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\catch.dpr
?????文件???????3753??2007-12-11?15:29??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\pku2103.dpr
?????文件???????7651??2007-11-21?21:24??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\pku3237.dpr
?????文件????????237??2007-12-24?21:32??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\gen.dpr
?????文件???????1653??2007-12-24?22:35??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_10.dpr
?????文件????????936??2007-12-25?14:42??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_10.txt
?????文件???????1849??2007-12-24?22:51??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_10_10.dpr
?????文件????????899??2007-12-25?14:43??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_10_10.txt
?????文件???????1657??2007-12-24?22:40??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_20.dpr
?????文件????????911??2007-12-25?14:46??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_20.txt
?????文件???????1849??2007-12-25?14:56??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_20_10.dpr
?????文件???????1005??2007-12-25?15:00??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_20_10.txt
?????文件???????1657??2007-12-24?22:45??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_50.dpr
?????文件????????895??2007-12-25?15:05??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_50.txt
?????文件???????1847??2007-12-25?14:11??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_5_10.dpr
?????文件????????890??2007-12-25?14:42??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_5_10.txt
?????文件???????1845??2007-12-25?14:09??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_5_5.dpr
?????文件????????882??2007-12-25?14:33??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099\ural1099_5_5.txt
?????文件???????1774??2007-11-28?15:03??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\ural1099.dpr
?????文件?????264192??2008-01-26?12:40??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\平衡規劃.doc
?????文件?????869888??2008-01-26?13:38??國家集訓隊2008論文集\Day1\2.鄭暾《平衡規劃——淺析一類平衡思想的應用》\平衡規劃.ppt
?????文件???????7077??2007-11-05?22:30??國家集訓隊2008論文集\Day1\3.劉弈《淺談信息學中狀態的合理設計與應用》\例題程序\Banal_Tickets.dpr
?????文件???????7781??2008-01-25?20:26??國家集訓隊2008論文集\Day1\3.劉弈《淺談信息學中狀態的合理設計與應用》\例題程序\Shoot_Your_Gun.dpr
............此處省略84個文件信息
- 上一篇:大氣輻射傳輸模型MODTRAN4
- 下一篇:_NET軟件測試自動化之道_中文版
評論
共有 條評論