就是一个简单模拟
#include<iostream> #include<string> using namespace std; const int maxn=1e5+10; int in[maxn], x[maxn], y[maxn]; string name[maxn]; int h; int n, m; int main(){ cin>>n>>m; for(int i=0;i<n;++i)cin>>in[i]>>name[i]; for(int i=0;i<m;++i)cin>>x[i]>>y[i]; h=0; for(int i=0;i<m;++i){ if(in[h]==0){ if(x[i]==0)h-=y[i]; else h+=y[i]; h%=n; h=(h+n)%n; }else{ if(x[i]==0)h+=y[i]; else h-=y[i]; h%=n; h=(h+n)%n; } } cout<<name[h]<<endl; }
本文深入探讨了使用C++实现的一种简单模拟算法,通过输入数组和操作指令来更新当前索引,最终输出更新后的索引对应的字符串名称。该算法涉及数组、字符串操作以及循环结构,是理解C++基础语法和数据结构的良好案例。
131

被折叠的 条评论
为什么被折叠?



