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

class20 lcy stl库03

时间:2024-08-12 09:17 作者:admin 点击:
#include iostream using namespace std; int main(){ int t[365]={}; int n,a,b,m; cinnabm; t[1]=a; t[2]=b; for(int i=3;i=n;i++){ t[i]=t[i-1]+t[i-2]; } int sum=0; for(int i=1;i=n;i++){ sum+=t[i]; if(t[i]=m) break; } coutsum; return 0; } -------

#include <iostream>

using namespace std;

int main(){

   int t[365]={};

   int n,a,b,m;

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

   t[1]=a;

   t[2]=b;

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

       t[i]=t[i-1]+t[i-2];

   }

   int sum=0;

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

       sum+=t[i];

       if(t[i]>=m) break;

   }

   cout<<sum;

   return 0;

}


------------

序列容器:array,deque,vector,forward_list,list(线性)

关联容器:set集合,map映射(树形结构,便于排序)


set<int> s;

s.insert(5);

s.insert(3);

s.insert(8);

s.insert(5);


for(auto i=s.begin();i!=s.end();i++){

   cout<<*i;//将i指向的地址的内容输出  3 5 8

}


map<string,int> mp;//有两个类型组成一个整体,也叫一对,或键值对

mp.insert(make_pair("haha",7));//make_pair 将括号里的两个数据组成一对,再存放到map中

mp.insert(make_pair("hbhb",5));

mp.insert(make_pair("aaa",6));

mp.insert(make_pair("hbhb",8));//跳过

//映射独有的方法:下标法,以键为下标

mp["bbb"]=6;

mp["hchc"]=9;

mp["haha"]=3;//覆盖


遍历方式:

for(map<string,int>::iterator i=mp.begin();i!=mp.end();i++){

   cout<<i->first<<" "<<i->second;//first代表第一个元素(键) second(值)

}


for(auto i=mp.begin();i!=mp.end();i++){

   cout<<i->first<<" "<<i->second;

}


单个数据输出,通过下标法完成

cout<<mp["aaa"];//6

cout<<mp["haha"];//3


容器适配器:stack栈,queue队列,priority_queue优先队列

stack:先进后出,后进先出,有栈顶和栈底,存和取通过栈顶完成

stack<int> s;

s.push(5);//存5

s.push(3);//存3

s.push(2);//存2

while(!s.empty()){//只要s不为空,就执行循环

   cout<<s.top();//输出栈顶元素

   s.pop();//移除栈顶元素

}

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