**
1.fill函式:可以為陣列或者vector中的每個元素賦以相同的值,通常用於初始化!
賦值範圍為:[first,last)
所賦的值為: val
fill()給一位陣列賦值
#include
#include
using
namespace std;
int v[10]
;int
main
(int argc,
char
const
*ar**)
第一二題主要的流程:
自定義sort比較函式:
1.vector存放點排序:
struct point
;vector points;
bool
cmp(
const point &p1,
const point &p2)
else
return p1.dis < p2.dis;
}sort
(points.
begin()
,points.
end(
),cmp)
;
2.陣列自定義排序:
struct point
point[nmax]
;bool
cmp(
const point &p1,
const point &p2)
else
return p1.dis < p2.dis;
}sort
(point,point+n,cmp)
;
優先佇列priority_queue的用法
定義:priority_queue
type 就是資料型別,container 就是容器型別(container必須是用陣列實現的容器,比如vector,deque等等,但不能用 list。stl裡面預設用的是vector),functional 就是比較的方式,當需要用自定義的資料型別時才需要傳入這三個引數,使用基本資料型別時,只需要傳入資料型別,預設是大頂堆
//公升序佇列
priority_queue <
int,vector<
int>
,greater<
int>
> q;
//降序佇列
priority_queue <
int,vector<
int>
,less<
int>
>q;
//greater和less是std實現的兩個仿函式(就是使乙個類的使用看上去像乙個函式。其實現就是類中實現乙個operator(),這個類就有了類似函式的行為,就是乙個仿函式類了)
// 這裡一定要有空格,不然成了右移運算子↓
priority_queue<
int, vector<
int>
, greater<
int>
> c;
//這樣就是小頂堆
//關於priority_queue優先佇列的用法:
stl容器佇列queue的主要函式:
queue入隊,如例:q.push(x); 將x 接到佇列的末端。
queue出隊,如例:q.pop(); 彈出佇列的第乙個元素,注意,並不會返回被彈出元素的值。
訪問queue隊首元素,如例:q.front(),即最早被壓入佇列的元素。
訪問queue隊尾元素,如例:q.back(),即最後被壓入佇列的元素。
判斷queue佇列空,如例:q.empty(),當佇列空時,返回true。
訪問佇列中的元素個數,如例:q.size()
stl容器棧stack的主要函式:
常用函式:
empty:判斷堆疊元素是否為空,true表示棧元素為空;
pop:移除棧頂元素;
push:棧頂新增元素;
top:返回棧頂元素;
size:返回棧中元素數目;
stl容器棧string的主要函式:
string s;
s.empty(): s為空串返回true;
s.size():返回s中字元個數;
stl容器集合set的主要函式:
set容器的常用操作
使用時注意包含標頭檔案 std::set and std::multiset associative containers
s.begin() 返回set容器的第乙個元素
s.end() 返回set容器的最後乙個元素
s.clear() 刪除set容器中的所有的元素
s.empty() 判斷set容器是否為空
s.insert() 插入乙個元素
s.erase() 刪除乙個元素
s.size() 返回當前set容器中的元素個數
set是將丟入的數自動排序去重。
CCF認證 送貨
問題描述 為了增加公司收入,f公司新開設了物流業務。由於f公司在業界的良好口碑,物流業務一開通即受到了消費者的歡迎,物流業務馬上遍及了城市的每條街道。然而,f公司現在只安排了小明乙個人負責所有街道的服務。任務雖然繁重,但是小明有足夠的信心,他拿到了城市的地圖,準備研究最好的方案。城市中有n個交叉路口...
CCF認證 2017 12 遊戲
問題描述 有n個小朋友圍成一圈玩遊戲,小朋友從1至n編號,2號小朋友坐在1號小朋友的順時針方向,3號小朋友坐在2號小朋友的順時針方向,1號小朋友坐在n號小朋友的順時針方向。遊戲開始,從1號小朋友開始順時針報數,接下來每個小朋友的報數是上乙個小朋友報的數加1。若乙個小朋友報的數為k的倍數或其末位數 即...
ccf認證 201712 2 遊戲
題目 問題描述 有n個小朋友圍成一圈玩遊戲,小朋友從1至n編號,2號小朋友坐在1號小朋友的順時針方向,3號小朋友坐在2號小朋友的順時針方向,1號小朋友坐在n號小朋友的順時針方向。遊戲開始,從1號小朋友開始順時針報數,接下來每個小朋友的報數是上乙個小朋友報的數加1。若乙個小朋友報的數為k的倍數或其末位...