P1563玩具谜题

P1563玩具谜题

链接

思路:

用结构体存小人的朝向和姓名

a = 1左数 a=0 右数

b = 0朝内 b=1 朝外

无论 左数 右数 朝里 朝外 只有两种情况 顺时针 和 逆时针

顺时针:左数且朝内 或 右数且朝外 => 10 或 01 => a^b ==1

逆时针:左数且朝外 或 右数且朝内 => 11 或 00 => a&b==1

顺时针和逆时针怎么移动?

​ 顺时钟移动k步: i = (i+k)%n;

​ 逆时针移动k步:i = (i+n-k)%n;

#include
#include
#include
#include
using namespace std;
int n,m,s,b;
struct node{int a;string name;
};
node r[100005];
int main(){cin>>n>>m;for(int i=0;i>r[i].a>>r[i].name; //输入朝向和姓名int now=0; //标记当前位置for(int i=0;i>b>>s; //输入左移还是右移 并移动s位if(r[now].a^b==1){ //顺时针now=(now+s)%n;}else{//逆时针now=(now+n-s)%n;}}cout<


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部