A公交线路

题目
签到题。
这题的数据和思路都很简单,因为一定是以公司作为起点挨个报站点,所以“Unsure”的情况只需要考虑公司两边的m个数据是否对应完全一致就可以了;“Right”和“Wrong”的情况也是一样,对照数据是不是一样就可以。
我们考试的时候在家和公司的相对位置上犯蠢了,一开始没有考虑到家既可以在公司的前边也可以在公司的后边,罚时罚得很难看。
做得比较暴力和简单。
附上AC代码。

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,x,y;
	int a[15],b[15];
	scanf("%d%d%d",&n,&x,&y);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
	}
	int m;
	scanf("%d",&m);
	for(int i=1;i<=m;i++){
		scanf("%d",&b[i]);
	}
	int flag=0,p=x+1;
	for(int i=x-1;i>=x-m;i--){
		if(a[i]!=a[p]){
			flag=1;break;
		}
		p++;
	}
	if(flag!=1){
		printf("Unsure\n");
	}
	else if(y>x){		
		int f=1,k=1;
		for(int i=x+1;i<=x+m;i++){
			if(a[i]!=b[k]){
				printf("Wrong\n");
				f=0;break;
			}
			k++;
		}
		if(f==1)printf("Right\n");
	}else if(y<x){
		int f=1,k=1;
		for(int i=x-1;i>=x-m;i--){
			if(a[i]!=b[k]){
				printf("Wrong\n");
				f=0;break;
			}
			k++;
		}
		if(f==1)printf("Right\n");
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值