11401 - vector and STL   

Description

這是一個幫助你了解vector與STL的問題

基本上,除了output與read_input以外的所有function,都可以用STL完成(就是連if和for loop都不用的意思),以下是function的介紹

  1. cat(lhs,rhs): 將lhs與rhs合併(lhs在前,rhs在後),並回傳合併後的結果
  2. erase_equivalent(vec): 移除vec裡面所有重複的數字(相同的數字只保留1個),並回傳移除後的結果
    • 為了保證結果都相同,請先sort vec(由大至小)
  3. inter(lhs,rhs): 找出lhs與rhs的交集,並回傳該交集(由小至大)
    • 假設lhs是3 2 2 2 1,rhs是4 2 2 1,則回傳1 2 2
  4. make_size_to(vec,new_size): 將vec的大小設定成new_size。如果new_size比原本的大小還大,則新的數字皆為0。如果new_size比原本的大小還小,則只保留前new_size個數字
  5. mix(lhs,rhs): 將lhs與rhs合併後,由大至小排序,並回傳排序後的結果
  6. odd_num_count(vec): 回傳vec裡面,數字為奇數的數字的數量
  7. output(vec): 輸出vec裡面的內容,每個數字後面伴隨著一個空白,輸出完整個vec後再伴隨著一個換行
  8. rotate_half(vec): 將vec前後互換,例如1 2 3 4要變成3 4 1 2;1 2 3要變成2 3 1。回傳互換後的結果
  9. read_input(vec): 利用cin讀入,並儲存到vec裡面。讀到0時表示輸入結束
  10. reverse(vec): 將vec反轉,例如1 2 3 4要變成4 3 2 1;1 2 3要變成3 2 1。回傳反轉後的結果
  11. sort(vec): 對vec做排序,由大至小
  12. sum(vec): 回傳vec所有元素的加總

以下三個網站可以幫助你寫完這次的作業

http://en.cppreference.com/w/cpp/container/vector

http://en.cppreference.com/w/cpp/algorithm

http://en.cppreference.com/w/cpp/header/iterator

Input

根據cpp的main function描述,做出相對應的function

Output

根據上述function輸出

Sample Input  Download

Sample Output  Download

Partial Judge Code

11401.cpp

Partial Judge Header

11401.h

Tags




Discuss