欢迎使用本站,预祝练习时长两年半的选手们到成功! [本模块信息来自tem/def/head]

class18 lcy 算法库和模板库01

时间:2024-08-05 09:11 作者:admin 点击:
#include iostream using namespace std; int n,a,b,m; int main(){ cinnabm; int c,sum=0; sum=a+b; for(int i=3;i=n;i++){ c=a+b;//斐波那契下一项公式 sum+=c;//累加 if(c=m) break;//超范围,停止写题 a=b;//移项 b=c;//移项 } co

#include <iostream>

using namespace std;

int n,a,b,m;

int main(){

   cin>>n>>a>>b>>m;

   int c,sum=0;

   sum=a+b;

   for(int i=3;i<=n;i++){

       c=a+b;//斐波那契下一项公式

       sum+=c;//累加

       if(c>=m) break;//超范围,停止写题

       a=b;//移项

       b=c;//移项

   }

   cout<<sum;

   return 0;

}


今天完成3月2级,明天开始3级难度。

算法库和stl库

算法库 <algorithm>

https://noicode.online/exclusivetomembers/algorithm.html

一部分是c++标准库自带的

max()两个数选最大,min()两个数找最小,swap()两个数交换

sort()一段序列排序,find()查找,count()统计,reverse()倒序

unique()去重


stl库:c++模板库

每一种容器对应一个工具包

array 数组的类模板:常用的数组  int a[100];

deque 双向队列:可以快速进行头插、头删、尾插、尾删,不需要原数据位移。

vector 向量:可变长度的数组

array、deque、vector都是在内存中,连续存放数据的容器,因此都可以使用下标

创建一个容器语法:容器名<类型> 变量名;

vector<char> vc;//数组写法 char vc[100];

deque<int> di; //数组写法 int di[100];

存数据:普通数组

for(int i=0;i<n;i++) cin>>a[i];

存数据:容器

int num;

for(int i=0;i<n;i++){

   cin>>num;

   di.push_back(num);//将num放在di结构的末尾

}

di.push_front(x);//在di的前面放一个新的值x

di.pop_front();//将di的最前面的数据删除

di.pop_back();//将di的最后面的数据删除


front 代表前

back 代表后

push 放

pop 删

因为deque是双向队列,所以 前 后 都能用

但是,vector和array都只是单向的,因此,只能push_back(num)和pop_back();

forward_list

list

...

在stl模板库中都有

https://noicode.online/exclusivetomembers/muban.html

(责任编辑:admin)
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%