আইডিয়াঃ আমারা প্রথমে একটা ক্যারেক্টার অ্যারে নিবো। রোবটটি বামদিকে গেলে মান হবে -১ এবং ডানদিকে গেলে মান হবে +১। সুতরাং Left অর্থাৎ ক্যারেক্টার অ্যারের ০ ইনডেক্সে যদি L হয় তাহলে মান -১ করে বাড়াবো এবং Right অর্থাৎ ক্যারেক্টার অ্যারের ০ ইনডেক্সে যদি R হয় তাহলে মান +১ করে বাড়াবো. same as ith এর জন্য পূর্ববর্তী ইন্সট্রাকশন অনুযায়ী +১ অথবা -১ যোগ করবো।
কোডঃ
#include<bits/stdc++.h>
using namespace std;
int main()
{
int test,step,result,e,ar[101];
char c[20];
cin>>test;
while(test--)
{
cin>>step;
result=0;
for(int i=1;i<=step;++i)
{
scanf("%s",c);
if(c[0]=='L')
{
result-=1;
ar[i]=-1;
}
else if(c[0]=='R')
{
result+=1;
ar[i]=1;
}
else
{
scanf("%s%d",c,&e);
result+=ar[e];
ar[i]=ar[e];
}
}
cout<<result<<endl;
}
return 0;
}
No comments:
Post a Comment