problem description
給你n個整數,請按從大到小的順序輸出其中前m大的數。
input
每組測試資料有兩行,第一行有兩個數n,m(0output
對每組測試資料按從大到小的順序輸出前m大的數。
sample input
5 33 -35 92 213 -644
sample output
213 92 3演算法:
這種題都是有暴力演算法的,但是暴力演算法慢而且占用記憶體大,顯然不可取
這裡用的演算法是「桶排序」法。
第一步,定義一堆桶,要足夠多,型別可以用int,但我用的是bool,這樣可以節省大量記憶體;
第二步,初始化桶,就是把桶倒乾淨;
第三步,向桶裡裝入與桶編號相同的數,空桶為0,不空為1;
第四步,按要求輸出。
#include #include using namespace std;
#define n 1000001
bool a[n];//布林變數組存0或1,比其他型別佔空間小
int main()
}printf("\n");
}return 0;
}
杭電 1418 抱歉 題解報告
problem description 非常抱歉,本來興沖沖地搞一場練習賽,由於我準備不足,出現很多資料的錯誤,現在這裡換乙個簡單的題目 前幾天在網上查詢acm資料的時候,看到乙個中學的奧數題目,就是不相交的曲線段分割平面的問題,我已經發到論壇,並且lxj 已經得到乙個結論,這裡就不 多講了,下面有...
杭電2050 2059題解
大一實在是太閒了,刷的杭電oj,因為當時只學了c,所有題解都是c 杭電acm2050 include int main while scanf d n return0 杭電acm2051 include int main while i printf n return0 杭電acm2052 incl...
杭電2037解題報告
題目 今年暑假不ac problem description 今年暑假不ac?是的。那你幹什麼呢?看世界盃呀,笨蛋!確實如此,世界盃來了,球迷的節日也來了,估計很多acmer也會拋開電腦,奔向電視了。作為球迷,一定想看盡量多的完整的比賽,當然,作為新時代的好青年,你一定還會看一些其它的節目,比如新聞...