CCF学生排队---复习STL-vector,vector增删真的方便

tech2024-06-14  53

CCF-201703-2

通过这个题目复习一下啊STL-vectorOK!看看题目怎么说解题思路直接上代码,冲啊!总结最后放一下vector的API

通过这个题目复习一下啊STL-vector

OK!看看题目怎么说

解题思路

思路很简单,就是先找到对应值的位置,然后把位置移动 那么会出现除掉一个之后,后面的值全部向前移动一个,就要用一个for循环来做 vector帮我们完成了这个过程 因为vector的长度是动态的,对于一些数特别多的题,用vector在数小的时候可以节约不少内存,而且方便骗分呢!

直接上代码,冲啊!

#include<iostream> #include<vector> using namespace std; vector<int> v; int main(){ int n,m; cin>>n>>m; for(int i=0;i<n;i++){ v.push_back(i+1); } while(m--){ int a,b; cin>>a>>b; for(int i=0;i<v.size();i++){ if(v[i]==a){ v.erase(v.begin()+i); v.insert(v.begin()+i+b,a); break; } } } for(int i=0;i<v.size();i++){ cout<<v[i]<<" "; } return 0; }

总结

凡是遇到数组需要增删的用vector就很方便,很舒服!

最后放一下vector的API

最新回复(0)