青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

This blog has been shut down permanently.

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  13 隨筆 :: 0 文章 :: 25 評論 :: 0 Trackbacks

#

     摘要: 最開始用了很原始的數據初始化方法,多謝dskit指點,現在已經改正為哈希字典了。因為在創建新節點的時候浪費時間比較嚴重,所以如果改成用向量會更好一些。 #include<stdio.h>#include<stdlib.h>int map[25]= {2, 2, 2, 3, 3, 3, 4,&n...  閱讀全文
posted @ 2009-11-11 00:44 iZ 閱讀(1894) | 評論 (4)編輯 收藏

1.輸入輸出

ACM和TopCoder不同,TopCoder只用讓參賽者寫一個class,而ACM需要參賽者完成整個console程序.在TopCoder中,輸入輸出是通過parameter傳遞的,不用過多考慮,在ACM中,卻需要自己編寫.

(1).只有一組輸入時,這種情況不用我說了,都會,但是通常也不會有這么水的題

(2).固定組數的輸入,可以利用一個計數器和while語句完成,

01 #include <iostream>
02
03 int main(void){
04     int n;
05     scanf("%d", &n);
06     while (n--){
07         //...
08     }
09     //...
10     return 0;
11 }

(3).測試數據結尾有標志字符(例如最后一組輸入后給一個0),這個只用加一個if語句判斷讀入的數據是什么,是結束標志跳出就ok了.也不多說了

(4).題目沒有告訴你有多少組數據,這個通常是最令新手疑惑的,這種情況,一般用文件結束標志EOF判斷

01 #include <iostream>
02
03 int main(void){
04     int n;
05     while (scanf("%d", &n) != EOF){
06     //...
07     }
08     //...
09     return 0;
10 }

其實這里也可以用c++的cin輸入流判斷,例如

01 #include <iostream>
02
03 using namespace std;
04
05 int main(void){
06     int n;
07     while (cin>>n){
08     //...
09     }
10     //...
11     return 0;
12 }

但是這樣不是特別好,為什么?下面會說.

對于輸出,最好采用的接收一組數據,處理一組數據,把結果保存在一個緩沖數組中,待所有輸入結束后,再一起輸出,而不是待接收完所有輸入后,再處理,再輸出,這樣會消耗更多的memory,而且會更慢.

2.關于效率

第一,上面的所有例子,均采用的c標準I/O,為什么不用c++的cin,cout呢?是有原因的,經實踐,在大規模輸入輸出下,cin,cout效率遠遠低于scanf()和printf(),原因據我估計應該是以為scanf(),printf()是匯編寫的(這點可以從這兩個函數均可以接受任意多組parameter(s)看出,c/c++函數是不具備這樣的性質的),而cin,cout均是直接c/c++寫的流操作,本來c/c++就比匯編慢,還引入流,所以自然比scanf(),printf()慢了.因此,在輸入輸出數據量很小的情況下,出于方便的原因,可以采用cin,cout,而在輸入輸出數據量比較大的情況下用scanf(),printf()比較保險,避免超時.

第二.ACM中,除了c/c++,一般還支持java等語言,但是由于java是解釋執行的,效率十分低下,為此,一般的JudgeOnline都把java的time limit設置為題目給定值(也就是c/c++的time limit)的三倍,而且給每一組輸入再額外提供150ms.即使是這樣,java遇上復雜或者高精度計算的題目,還是很容易超時,因為效率有時候還遠遠未到c/c++的1/3.因此,一般來說,除了個別java極其有利的情況(例如字符串處理),不建議使用java.

3.關于所得結果的解釋

下面是一般JudgeOnline系統所有可能產生的結果,如果對返回的結果不明,看看解釋吧

Waiting: Your program is being judged or waiting to be judged.

Accepted (AC): Congratulations! Your program has produced the correct output!

Presentation Error (PE): Your program's output format is not exactly the same as required by the problem, although the output is correct. This usually means the existence of omitted or extra blank characters (white spaces, tab characters and/or new line characters) between any two non-blank characters, and/or blank lines (a line consisting of only blank characters) between any two non-blank lines. Trailing blank characters at the end of each line and trailing blank lines at the of output are not considered format errors. Check the output for spaces, blank lines, etc. against the problem's output specification.

Wrong Answer (WA): Your program does not produce the correct output. Special judge programs will possibly return Wrong Answer in place of Presentation Error for simplicity and robustness.

Runtime Error (RE): Your program has failed during the execution. Possible causes include illegal file access, stack overflow, out of range in pointer reference, floating point exception, division by zero and many others. Programs that stay not responding for a long time (not consuming CPU cycles) may also be considered to have encountered runtime errors.

Time Limit Exceed (TLE): The total time your program has run for has exceeded the limit.

Each problem has two time limits - TOTAL TIME LIMIT and CASE TIME LIMIT. The former is the total time allowed for your program to deal with all input files. And the latter is the total time allowed for your program to deal with a single input file. Exceeding either one will lead to Time Limit Exceed. If you get Time Limit Exceed but find that your program has run for less time than is limited, your program must have exceeded that CASE TIME LIMIT.

Problems without a special demand on the time limit for a single input file will have its case time limit is trivially set as the same as its total time limit and the phrase "Case Time Limit" will not show up under the problem title.

Memory Limit Exceed (MLE): The maximum amount of memory that your program has used has exceeded the limit.

Output Limit Exceed (OLE): Your program has produced too much output. Currently the limit is twice the size of the file containing the expected output. The most common cause of this result is that your programs falls into an infinite loop containing some output operations.

Compile Error (CE): The compiler fails to compile your program. Warning messages are not considered errors. Click on the judge's reply to see the warning and error messages produced by the compiler.

No such problem: Either you have submitted with a non-existent problem id or the problem is currently unavailable (probably reserved for upcoming contests).

System Error: The judge cannot run your program. One example is that your program requires much more memory than hardware limitation.

Validate Error: The special judge program fails in checking your output, which means it may contain some bugs. If you get this result, please contact the administrator. (Of course, this also means your output is probably wrong).

posted @ 2009-11-11 00:43 iZ 閱讀(1866) | 評論 (11)編輯 收藏

要看的書:

<算法導論>
<算法藝術與信息學競賽>
<圖論的算法與程序設計>
<國際大學生程序設計競賽例題解>
<基本算法>
<騙分導論>
<國際大學生程序設計競賽例題解(一)>-<數論、計算幾何、搜索算法專集>
<國際大學生程序設計競賽例題解(三)>-<圖論、動態規劃算法、綜合題專集>

學習規劃:

一、第一階段(11月13日 – 12月4日)主要完成的算法:
1、基本數據結構:
        線性表、鏈表(尤其雙向鏈表和循環鏈表)、棧、二叉樹
2、加減乘除四則運算的高精度算法
3、了解算法思想:DP、貪心、二分
4、查找與排序: 
        二分查找、二叉排序數、qsort函數、歸并排序、HASH
5、圖論基礎算法: 
        DFS、BFS、MST(Prim)、Dijkstra、Floyd 、拓撲排序、割點
6、數學知識:初等數論(整除、同余)

二、第二階段(12月25日 – 2月1日)主要完成的算法:
1、高級數據結構: 
        堆、并查集及路徑壓縮(Kruskal)、線段樹
2、圖論高級算法: 
        二分圖匹配(匈牙利算法)、網絡流、最小費用流、最大團、最大獨立集、中國郵路問題、找Hamilton圈、尋找歐拉回路、著色問題、連通性判定、傳遞閉包和差分約束系統
3、博弈算法:博弈樹、尋找必敗類算法
4、計算幾何: 
        判斷線段相交、判斷點是否在多邊形內、凸包、矩形的交與并、兩直線相交問題、已知三點求圓心
5、高級數學知識:(組合數學、具體數學中為主) 
        Fibonacci、Catalan數的應用、差分序列和Stirling數、Burnside定理和置換群、容斥原理、概率問題、生成排列數
6、高級搜索技巧: 
        雙向BFS、A*算法(啟發式搜索)、最小消耗優先、變深度優先搜索

三、三個算法思想的具體訓練內容:


1)、DP 重中之重 (準備拿出3天做DP一種類型)
要解決的經典例題: 
       1、 最長不下降子序列(Longest Increasing Subsequence) 
       2、 最長公共子序列 (Longest Common Subsequence) 
       3、 矩陣鏈乘法 (Matrix Multiplication) 
       4、0-1背包 
       5、凸多邊形的最優三角劃分 
       6、多邊形游戲 ---- 三角大戰

2)、Greedy 貪心算法 高效優選算法
要解決的經典問題: 
       1、0-1背包 
       2、MST(Prim、Kruskal) 
       3、Dijkstra 
       4、Huffman Tree Code(霍夫曼編碼)

3)、二分法
要解決的經典問題: 
       1、 歸并排序算法求逆序數 (Inversion Number) 
       2、 最近點對 
       3、 幾種常見算法的二分查找優化:LIS (最長不下降子序列)

posted @ 2009-11-11 00:40 iZ 閱讀(444) | 評論 (1)編輯 收藏

僅列出標題
共2頁: 1 2 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品女人网站| 一区二区三欧美| 亚洲视频一二三| 久久久精品国产免费观看同学| 亚洲视频在线看| 中日韩美女免费视频网址在线观看| 亚洲国产精品久久久久秋霞影院| 亚洲精品国产精品国自产观看浪潮| 日韩视频免费观看高清完整版| 欧美中文字幕在线播放| 欧美电影打屁股sp| 久久免费视频网站| 久久欧美中文字幕| 亚洲欧美区自拍先锋| 欧美激情精品久久久久久久变态| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美91视频| 国产三区精品| 亚洲视频在线免费观看| 久久久水蜜桃| 久久福利毛片| 韩国欧美国产1区| 男人插女人欧美| 欧美日韩精品一区二区三区四区| 亚洲精品影视在线观看| 亚洲精品久久视频| 欧美日韩三级在线| 欧美成人a视频| 快播亚洲色图| 午夜精品久久| 国产专区精品视频| 午夜欧美精品久久久久久久| 中日韩美女免费视频网址在线观看| 欧美激情麻豆| 亚洲色图制服丝袜| 99re6这里只有精品| 欧美另类极品videosbest最新版本| 国内精品久久久久久久果冻传媒| 美乳少妇欧美精品| 久久精品夜色噜噜亚洲a∨| 国产亚洲欧美日韩一区二区| 久久亚洲春色中文字幕| 久久久久国产精品一区二区| 国产性做久久久久久| 蜜桃av噜噜一区| 欧美人成在线| 欧美一区午夜视频在线观看| 欧美一区二区三区四区在线 | 91久久在线播放| 欧美成人一区二免费视频软件| 亚洲电影成人| 欧美一级午夜免费电影| 亚洲视频国产视频| 国产精品美女在线观看| 亚洲欧美一区二区原创| 久久精品免费播放| 激情综合视频| 久久夜色精品国产欧美乱| 久久久噜噜噜久久| 亚洲欧美日韩精品久久亚洲区| 裸体丰满少妇做受久久99精品| 米奇777超碰欧美日韩亚洲| 一区视频在线看| 国产裸体写真av一区二区| 久久精品91久久久久久再现| 亚洲高清资源综合久久精品| 国产精品草莓在线免费观看| 宅男噜噜噜66一区二区66| 久久视频一区| 亚洲一区二区在线看| 免播放器亚洲一区| 久久九九精品99国产精品| 国产日韩欧美91| 99精品欧美一区| 亚洲综合丁香| 可以免费看不卡的av网站| 国产欧美一区二区色老头| 日韩视频在线观看| 一区二区免费在线观看| 嫩草国产精品入口| 欧美激情一区二区三区成人| 亚洲国产第一| 亚洲精品欧洲精品| 亚洲综合99| 午夜精品久久久久久久男人的天堂 | 久久天堂精品| 欧美不卡视频一区发布| 亚洲精品乱码久久久久久黑人| 狠狠色丁香久久婷婷综合丁香| 久久精品国产99| 亚洲国产精品久久久| 亚洲欧美日韩国产| 国内外成人免费激情在线视频网站| 老司机一区二区三区| 亚洲国产小视频| 国产日韩高清一区二区三区在线| 亚洲国产91| 欧美在线亚洲综合一区| 女仆av观看一区| 国产精品99久久久久久久vr| 久久精品欧洲| 国产精品日日做人人爱| 在线观看精品一区| 亚洲午夜小视频| 亚洲风情在线资源站| 亚洲欧美日韩精品久久| 欧美日韩亚洲网| 在线视频精品| 亚洲第一福利社区| 国产视频精品xxxx| 国产精品日本一区二区 | 麻豆国产精品va在线观看不卡| 亚洲免费成人| 蜜臀av在线播放一区二区三区| 国产精品一区二区欧美| 亚洲视频在线观看免费| 亚洲激情另类| 老鸭窝91久久精品色噜噜导演| 国产精品入口日韩视频大尺度| 亚洲精品日日夜夜| 欧美在线视频观看免费网站| 亚洲第一福利视频| 亚洲特色特黄| 国产精品乱人伦一区二区| 亚洲免费在线精品一区| 亚洲在线视频网站| 亚洲午夜av| 国产免费成人在线视频| 一区二区日韩精品| 欧美激情va永久在线播放| 久久久噜噜噜久久久| 在线观看的日韩av| 欧美成人免费视频| 欧美激情视频在线播放| 欧美日韩精品在线观看| 亚洲精品在线二区| 99v久久综合狠狠综合久久| 欧美午夜激情视频| 久久精品成人一区二区三区 | 中文国产成人精品| 国产亚洲永久域名| 亚洲电影观看| 在线精品亚洲一区二区| 午夜精品久久久| 亚洲麻豆国产自偷在线| 久久久久久综合网天天| 欧美在线一二三四区| 国产精品久久久一本精品| 欧美大片在线影院| 亚洲精品欧美专区| 欧美黄色精品| 亚洲三级影院| 亚洲一区精品在线| 欧美黄色影院| 99pao成人国产永久免费视频| 一区二区三区免费在线观看| 亚洲天堂av在线免费观看| 亚洲看片免费| 一区二区免费在线播放| 欧美日韩国产美女| 亚洲电影网站| av成人老司机| 国产精品视频yy9099| 日韩午夜黄色| 久久精品一二三区| 一区精品在线| 国产精品女人毛片| 欧美与欧洲交xxxx免费观看| 久久精品日产第一区二区| 亚洲国产精品久久久久秋霞影院 | 欧美91大片| 亚洲欧美国产日韩天堂区| 亚洲成色999久久网站| 亚洲欧美制服另类日韩| 一区在线免费| 国产久一道中文一区| 亚洲国产另类久久久精品极度| 在线不卡亚洲| 国产精品一区二区三区乱码| 麻豆成人在线| 欧美一区二区| 久久久精品欧美丰满| 免费在线日韩av| 午夜精品亚洲一区二区三区嫩草| 在线成人激情| 欧美日韩在线视频观看| 欧美黄色免费网站| 久久久久久亚洲精品不卡4k岛国| 亚洲人成人99网站| 亚洲国产精品专区久久| 欧美一区亚洲| 性欧美xxxx视频在线观看| 久久国产精品久久久久久| 欧美国产精品v| 欧美承认网站| 亚洲人成精品久久久久| 亚洲国产日韩欧美在线99| 久久久一区二区| 欧美777四色影视在线| 久久综合久久久|