from collections import deque
n=int(input())
data,d1,d2=input(),deque(),deque()
for i in range(n):
if data[i]=="R":
d1.append(i)
else:
d2.append(i)
while True:
try:
if d1[0] > d2[0]:
d1.popleft()
d2.append(n+d2[0])
d2.popleft()
else:
d2.popleft()
d1.append(n+d2[0])
d1.popleft()
except IndexError:
break
if d1:
print('R')
else:
print('D')
#include<bits/stdc++.h>
using namespace std;
int main()
{
int num;
cin>>num;
string s;
cin>>s;
queue<int>d,r;
for(int i=0;i<s.size();i++)
{
s[i]=='D'?d.push(i):r.push(i);
}
int n=s.size();
int curr=n;
while(!d.empty() && !r.empty())
{
int d1=d.front();
int r1=r.front();
d.pop();
r.pop();
d1<r1? d.push(curr++) : r.push(curr++);
}
if(d.size())
{
cout<<"D";
}
else
{
cout<<"R";
}
}
167. Two Sum II - Input array is sorted | 387. First Unique Character in a String |
383. Ransom Note | 242. Valid Anagram |
141. Linked List Cycle | 21. Merge Two Sorted Lists |
203. Remove Linked List Elements | 733. Flood Fill |
206. Reverse Linked List | 83. Remove Duplicates from Sorted List |
116. Populating Next Right Pointers in Each Node | 145. Binary Tree Postorder Traversal |
94. Binary Tree Inorder Traversal | 101. Symmetric Tree |
77. Combinations | 46. Permutations |
226. Invert Binary Tree | 112. Path Sum |
1556A - A Variety of Operations | 136. Single Number |
169. Majority Element | 119. Pascal's Triangle II |
409. Longest Palindrome | 1574A - Regular Bracket Sequences |
1574B - Combinatorics Homework | 1567A - Domino Disaster |
1593A - Elections | 1607A - Linear Keyboard |
EQUALCOIN Equal Coins | XOREQN Xor Equation |