题解:
这题还是比较水的,直接记录下四个方向执行了几次然后取相反方向的最小值乘2就是答案
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<queue>
#include<stack>
#include<math.h>
#include<vector>
#include<map>
#include<set>
#include<stdlib.h>
#include<cmath>
#include<string>
#include<algorithm>
#include<iostream>
using namespace std;
#define lson k*2
#define rson k*2+1
#define M (t[k].l+t[k].r)/2
#define ll long long
int main()
{
int n,i,j;
int x=0,y=0,ans=0;
char s[105];
int a[5];
memset(a,0,sizeof(a));
scanf("%d%s",&n,s);
for(i=0;i<strlen(s);i++)
{
switch(s[i])
{
case 'L':a[0]++;break;
case 'R':a[1]++;break;
case 'U':a[2]++;break;
case 'D':a[3]++;break;
}
}
if(a[0]!=0&&a[1]!=0)
{
ans+=min(a[0],a[1])*2;
}
if(a[2]!=0&&a[3]!=0)
{
ans+=min(a[2],a[3])*2;
}
printf("%d\n",ans);
return 0;
}