#include <bits/stdc++.h>
#define ll long long
#define str string
#define endl "\n"
#define pb push_back
#define db double
#define fi first
#define se second
#define si size()
using namespace std;
const ll MAXN=8e2+7;
const ll INF=1e16+7;
ll t, n, a[MAXN];
ll dp[807][3], vetcan[807][3] , vetcanlr[807][3];
int main()
{
ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
cin >> t;
while(t--)
{
cin >> n;
for(int i=1;i<=n;i++)
{
dp[i][0]=dp[i][1]=INF;
vetcan[i][0]=vetcan[i][1]=-1;
}
for(int i=1;i<=n;i++)
{
cin >> a[i];
}
dp[1][0]=a[1];
// 0 L+ 1 R-
for(int i=2;i<=n;i++)
{
if(abs(dp[i][0])>abs(dp[i-1][0]-a[i]))
{
dp[i][0]=dp[i-1][0]-a[i];
vetcan[i][0]=0;
vetcanlr[i][0]=1;
}
if(abs(dp[i][0])>abs(dp[i-1][1]-a[i]))
{
dp[i][0]=dp[i-1][1]-a[i];
vetcan[i][0]=1;
vetcanlr[i][0]=1;
}
if(abs(dp[i][0])>= abs(dp[i-1][0]+a[i]))
{
dp[i][0]=dp[i-1][0]+a[i];
vetcan[i][0]=0;
vetcanlr[i][0]=0;
}
if(abs(dp[i][0])>=abs(dp[i-1][1]+a[i]))
{
dp[i][0]=dp[i-1][1]+a[i];
vetcan[i][0]=1;
vetcanlr[i][0]=0;
}
if(abs(dp[i][1])>abs(dp[i-1][0]-a[i]))
{
dp[i][1]=dp[i-1][0]-a[i];
vetcan[i][1]=0;
vetcanlr[i][1]=1;
}
if(abs(dp[i][1])>abs(dp[i-1][1]-a[i]))
{
dp[i][1]=dp[i-1][1]-a[i];
vetcan[i][1]=1;
vetcanlr[i][1]=1;
}
if(abs(dp[i][1])>= abs(dp[i-1][0]+a[i]))
{
dp[i][1]=dp[i-1][0]+a[i];
vetcan[i][1]=0;
vetcanlr[i][1]=0;
}
if(abs(dp[i][1])>=abs(dp[i-1][1]+a[i]))
{
dp[i][1]=dp[i-1][1]+a[i];
vetcan[i][1]=1;
vetcanlr[i][1]=0;
}
}
str s="";
ll mn=dp[n][0];
ll pos01 = vetcan[n][0];
ll poslr = vetcanlr[n][0];
ll l = 0;
if(mn > dp[n][1])
{
pos01 = vetcan[n][1];
mn=dp[n][1];
l = 1;
poslr = vetcanlr[n][1];
}
ll pos1n = n - 1;
if(poslr==1)
{
s='R'+s;
}else
{
s='L'+s;
}
while(pos1n!=1)
{
poslr=vetcanlr[pos1n][pos01];
if(poslr==1)
{
s='R'+s;
}else
{
s='L'+s;
}
pos01 = vetcan[pos1n][pos01];
pos1n--;
}
cout << "L" << s << endl;
}
return 0;
}