方法一(结构体)
- #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(); //删除最后一个元素
-
相关阅读:
微信小程序开发快速上手——介绍与准备
纯js实现html指定页面导出word
SOCKS5代理与网络安全的趣味之旅
Maven
java 字符串只保留数字、字母、中文
InnoDB多版本并发控制MVCC
神经网络中的参数量和FLOPs的计算
zookeeper:服务器有几种状态?
spring boot Mybatis Plus分页
matlab去除图片上的噪声
-
原文地址:https://blog.csdn.net/2201_75525567/article/details/138197995