atcoder D 代码求找问题
  • 板块学术版
  • 楼主Pig_py
  • 当前回复3
  • 已保存回复3
  • 发布时间2022/3/12 22:05
  • 上次更新2023/10/28 06:43:35
查看原帖
atcoder D 代码求找问题
448873
Pig_py楼主2022/3/12 22:05
#include<bits/stdc++.h>
using namespace std;
bool dis[1000006];
char ch[1000005];
int main(){
	long long n,x;
	scanf("%lld%lld",&n,&x);
	for(long long i=1;i<=n;i++){
		std::cin>>ch[i];
	}
	for(long long i=1;i<n;i++){
		if(ch[i]=='R'&&ch[i+1]=='U'){
			dis[i]=1;
			dis[i+1]=1;
		}
		if(ch[i]=='L'&&ch[i+1]=='U'){
			dis[i]=1;
			dis[i+1]=1;
		}
	}
	for(long long i=1;i<=n;i++){
		if(dis[i]==1)continue;
		if(ch[i]=='U'&&x!=1)x=x/2;
		else if(ch[i]=='L'){
			x=x*2;
		}
		else if(ch[i]=='R'){
			x=x*2+1;
		}
	}
	printf("%lld",x);
}

2022/3/12 22:05
加载中...