方法一(结构体)
- #include
- using namespace std;
- struct node{
- int num;
- string name;
- }a[100005];
- signed main(){
- std::ios::sync_with_stdio(false);
- std::cin.tie(NULL);
- int n,m;
- cin>>n>>m;
- for(int i=0;i
- cin>>a[i].num>>a[i].name;
- int x,y;
- int now=0;
- for(int i=0;i
- cin>>x>>y;
- if(a[now].num==0&&x==0) now=(now+n-y)%n;
- else if(a[now].num==1&&x==0) now=(now+y)%n;
- else if(a[now].num==0&&x==1) now=(now+y)%n;
- else if(a[now].num==1&&x==1) now=(now+n-y)%n;
- }
- return 0;
- }
首位相连的数组的规律表示,结构体的复习
方法二:(vector 动态数组,长度不确定,可动态分配空间)
- #include
- #include
- using namespace std;
- int n,m;
- vector
name; - vector<bool> w;
- signed main(){
- cin>>n>>m;
- for(int i=0;i
- bool a; string b;
- cin>>a>>b;
- w.push_back(a);
- name.push_back(b);
- }
- int ponit=0;
- while(m--)
- {
- bool f;
- int num;
- cin>>f>>num;
- if(num!=0)
- {
- if(w[point]^f)
- point=(point+num)%n;
- else point=(point-num+n)%n;
- }
- }
- cout<
- return 0;
- }
头文件:#include
1、vectorv; //使用模板类,默认构造函数
2、vector(v.begin(),v.end()); //将[v.begin(),v.end())区间的元素拷贝给本身
3、vector(n,elem); //将n个elem拷贝给本身
4、vector(const vector &v); //拷贝构造函数
push_back(ele); //尾部插入元素ele
pop_back(); //删除最后一个元素
-
相关阅读:
ES分布式搜索-索引库操作
Go 字符串处理:fmt.Sprintf与string.Builder的比较
什么是自动做市商?
『Linux小程序』进度条
IP代理|一文看懂IPv4与IPv6
Python3-excel文档操作(四):利用openpyxl库处理excel表格:将数据进行可视化展示在Excel中
pycharm中个人编程时常用到的快捷键
简单了解:什么是低代码?
ElementUI之登录与注册
如何使用记事本制作一个简陋的小网页(1)
-
原文地址:https://blog.csdn.net/2201_75525567/article/details/138197995