QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#376806 | #4567. Admissible Map | InfinityNS | TL | 1755ms | 399304kb | C++17 | 3.2kb | 2024-04-04 16:52:18 | 2024-04-04 16:52:19 |
Judging History
answer
#include<bits/stdc++.h>
#define sz(x) (int)(x).size()
#define f first
#define s second
#define pb push_back
#define ll long long
#define all(x) (x).begin(),(x).end()
using namespace std;
// 19:33
const int N=20002;
int visited[N];
bool inc[N];
int nxt[N];
int need[N];
bool moze[N][N],mid[N][N];
bool pocetak[N],kraj[N];
int nxtNo[N];
int up[N],down[N];
int dfs(int tr){
if(nxt[tr]==-1){
inc[tr]=0;
visited[tr]=1;
return -1;
}
if(visited[nxt[tr]]==1){
inc[tr]=0;
visited[tr]=1;
return -1;
}
if(visited[nxt[tr]]==2){
inc[tr]=1;
visited[tr]=1;
return nxt[tr];
}
visited[tr]=2;
int r=dfs(nxt[tr]);
visited[tr]=1;
if(r==-1){
inc[tr]=0;
return -1;
}
else{
inc[tr]=1;
if(tr==r)return -1;
return r;
}
}
int main(){
string s;
cin >> s;
int n=sz(s);
for(int i=0;i<n;i++){
up[i+1]=s[i]=='U';
up[i+1]+=up[i];
down[i+1]=s[i]=='D';
down[i+1]+=down[i];
for(int j=i;j<n;j++){
mid[i][j]=s[i]!='L'&&s[j]!='R';
}
}
for(int len=1;len<=n;len++){
for(int i=0;i<n;i++){
inc[i]=0;
visited[i]=0;
if(s[i]=='L'){
nxt[i]=i-1;
}
if(s[i]=='R'){
nxt[i]=i==n-1?-1:i+1;
}
if(s[i]=='U'){
nxt[i]=i<len?-1:i-len;
}
if(s[i]=='D'){
nxt[i]=i>=n-len?-1:i+len;
}
need[i]=0;
}
for(int i=0;i<n;i++){
pocetak[i]=kraj[i]=0;
if(!visited[i]){
dfs(i);
}
if(nxt[i]==-1||!inc[i]){
need[i]=-1;
}
if(need[i]==-1)continue;
if(nxt[i]>i){
need[i]=max(need[i],nxt[i]);
}
else{
need[nxt[i]]=max(need[nxt[i]],i);
}
}
int no=n;
for(int i=n-1;i>=0;i--){
if(need[i]==-1)no=i;
nxtNo[i]=no;
}
int r=0;
int lst=0;
for(int i=0;i<n;i++){
if(need[i]==-1){
lst=i+1;
r=i+1;
continue;
}
r=max(r,need[i]);
if(r==i){
pocetak[lst]=1;
kraj[r+1]=1;
lst=i+1;
r=i+1;
}
}
for(int i=0;i<=n-len;i++){
if(pocetak[i]){
int tr=i;
bool ok=!(up[tr+len]-up[tr])&&mid[tr][tr+len-1];
tr+=len;
while(ok&&tr<=nxtNo[i]){
if(!(down[tr]-down[tr-len])&&kraj[tr]){
moze[i][tr-1]=1;
}
if(tr>n-len)break;
ok=ok&&mid[tr][tr+len-1];
tr+=len;
}
}
}
}
int ans=0;
for(int i=0;i<n;i++)for(int j=i;j<n;j++)ans+=moze[i][j];
printf("%i\n",ans);
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 5876kb
input:
RDUL
output:
2
result:
ok 1 number(s): "2"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3792kb
input:
RDRU
output:
0
result:
ok 1 number(s): "0"
Test #3:
score: 0
Accepted
time: 1ms
memory: 5900kb
input:
RLRLRL
output:
6
result:
ok 1 number(s): "6"
Test #4:
score: 0
Accepted
time: 1ms
memory: 5784kb
input:
D
output:
0
result:
ok 1 number(s): "0"
Test #5:
score: 0
Accepted
time: 0ms
memory: 4116kb
input:
DL
output:
0
result:
ok 1 number(s): "0"
Test #6:
score: 0
Accepted
time: 1ms
memory: 5804kb
input:
RL
output:
1
result:
ok 1 number(s): "1"
Test #7:
score: 0
Accepted
time: 0ms
memory: 6092kb
input:
DU
output:
1
result:
ok 1 number(s): "1"
Test #8:
score: 0
Accepted
time: 0ms
memory: 5904kb
input:
RDULU
output:
2
result:
ok 1 number(s): "2"
Test #9:
score: 0
Accepted
time: 1ms
memory: 5920kb
input:
RDDUULRDDD
output:
2
result:
ok 1 number(s): "2"
Test #10:
score: 0
Accepted
time: 1ms
memory: 7960kb
input:
RLRLRLRLRL
output:
15
result:
ok 1 number(s): "15"
Test #11:
score: 0
Accepted
time: 0ms
memory: 5792kb
input:
DUDUDUDUDU
output:
15
result:
ok 1 number(s): "15"
Test #12:
score: 0
Accepted
time: 1ms
memory: 5928kb
input:
RDRDULULRR
output:
3
result:
ok 1 number(s): "3"
Test #13:
score: 0
Accepted
time: 0ms
memory: 7860kb
input:
UUURDRDRDLRULLRLULUDRURDRULLRU
output:
2
result:
ok 1 number(s): "2"
Test #14:
score: 0
Accepted
time: 1ms
memory: 6200kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRL
output:
120
result:
ok 1 number(s): "120"
Test #15:
score: 0
Accepted
time: 1ms
memory: 8312kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDU
output:
120
result:
ok 1 number(s): "120"
Test #16:
score: 0
Accepted
time: 1ms
memory: 6200kb
input:
RDRDRDRDRDRDRDULULULULULULULDL
output:
8
result:
ok 1 number(s): "8"
Test #17:
score: 0
Accepted
time: 1ms
memory: 9924kb
input:
DLURRURRLDDUUDRDURDDLRLULLULDUULDDRDUURLLDDLRRLUDURLLRRRLLRLUDULDULUUDLLDLRLULDDURDDDLLUURRDRRDDRULU
output:
18
result:
ok 1 number(s): "18"
Test #18:
score: 0
Accepted
time: 1ms
memory: 12288kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL
output:
1275
result:
ok 1 number(s): "1275"
Test #19:
score: 0
Accepted
time: 1ms
memory: 12224kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU
output:
1275
result:
ok 1 number(s): "1275"
Test #20:
score: 0
Accepted
time: 2ms
memory: 12008kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDULULULULULULULULULULULULULULULULULULULULULULULULUL
output:
26
result:
ok 1 number(s): "26"
Test #21:
score: 0
Accepted
time: 0ms
memory: 18164kb
input:
LRULLRUURRDUULDRULLLRLUDLDRUUURRDDRDLLDDRLUDLRLRRLRRUDUUULDDLUDUDRURUDLLRLDRLLDULRRURLDLDDDLUUUDRRUDRDURRRDLLDRDRRDULULRLLULULDLDLUURRRLRRUUUUDUUUULLURLUUDLURDUDDUDDURDDURRRLURDLUDDDDLRLDULRRRULLDDDDLLLDDLUDURDURLDDUDDRDLLULRRUDRRDRRRLUUULRLDDDDDDURRDULUDDDLDLLUDDUUDDDLLRDDRLRRLRDLDUDUDRULURRRULRLRD
output:
43
result:
ok 1 number(s): "43"
Test #22:
score: 0
Accepted
time: 3ms
memory: 18676kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL
output:
11325
result:
ok 1 number(s): "11325"
Test #23:
score: 0
Accepted
time: 0ms
memory: 18640kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU
output:
11325
result:
ok 1 number(s): "11325"
Test #24:
score: 0
Accepted
time: 2ms
memory: 14292kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULULUL
output:
76
result:
ok 1 number(s): "76"
Test #25:
score: 0
Accepted
time: 13ms
memory: 46776kb
input:
LRRDDUUDLRLDLLRRDRLRDRLUDURURLLDURDLUDDRDLRLUULRLLDLRRRLDRRULRRULURRUDURRDLULLLDDRURLLURURLRRRRLURLURUUDRURDLLRUDDLULDLLRULRURDLRDUULURDULLLRLRDLRRUDUUUDUDLLRULRRRDRLLRRURRRRRLRDULDURRDLDULLURLLLURLRLDDRURULLDULULDRLDRLUUDDULLDRRDRURURDUUDDRDULRRUUDULULDDLRDURUUUURULLURRUDRURLUDLLUURRULRURDDRDRLUDUU...
output:
168
result:
ok 1 number(s): "168"
Test #26:
score: 0
Accepted
time: 7ms
memory: 43144kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL...
output:
125250
result:
ok 1 number(s): "125250"
Test #27:
score: 0
Accepted
time: 10ms
memory: 43356kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU...
output:
125250
result:
ok 1 number(s): "125250"
Test #28:
score: 0
Accepted
time: 4ms
memory: 34912kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRD...
output:
251
result:
ok 1 number(s): "251"
Test #29:
score: 0
Accepted
time: 137ms
memory: 124704kb
input:
RDLRLLLLDDLDUUURUDUDUDUURURLRURLURLRLUULLRUDUURLDDRRDRUULDUURUDUUDLRLDUUUDRLLDRRDLLULDULRDURLLRLUDDRRLUDURRUUDULDLDLLDDUDURDLULRLLDRDRURUDLRDUDULLDUDDLRRRUDLLLRDLLRDDLDRDLRUUUUDRRDLDUUURDUUDUDDURUDRLDRRUURDUDDRRDDDULDRURDUURDUUDDRRDLRURRDUUDLDLRDULLLDDRLDRRLURLUUDRDDUDLDULDLRDDUUURRURURDUUDULULDDDRL...
output:
491
result:
ok 1 number(s): "491"
Test #30:
score: 0
Accepted
time: 77ms
memory: 123272kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL...
output:
1125750
result:
ok 1 number(s): "1125750"
Test #31:
score: 0
Accepted
time: 61ms
memory: 123428kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU...
output:
1125750
result:
ok 1 number(s): "1125750"
Test #32:
score: 0
Accepted
time: 50ms
memory: 94452kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRD...
output:
751
result:
ok 1 number(s): "751"
Test #33:
score: 0
Accepted
time: 612ms
memory: 239768kb
input:
LULDRUDLRRRRDRLRUUURDUUDLLUURDLRDRDDDURLUUDLRLRLUDRURDRRUDLRRLRURDDURURDRLULUULRDDLDLDLRLLLRLRRRLUDDLUDLDLURLUUDDDLLDUDLDRUULRLRUUDRDUUDLDLLDDLRUULRLUUDRRDLLLDLDUULLDDDLDRRRDDDDUUUULLLULRLLLLLDDDLLRDLDULDDDLRULRRDUULRLULRRDULDUULDURLRLDDLLLLRLLULDLRLDRRDLRULDRDDLDLUUUULUUDUDRDULUDRUDLUULRLRULULLUDRU...
output:
936
result:
ok 1 number(s): "936"
Test #34:
score: 0
Accepted
time: 327ms
memory: 241748kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL...
output:
4501500
result:
ok 1 number(s): "4501500"
Test #35:
score: 0
Accepted
time: 236ms
memory: 239840kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU...
output:
4501500
result:
ok 1 number(s): "4501500"
Test #36:
score: 0
Accepted
time: 215ms
memory: 180556kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRD...
output:
1501
result:
ok 1 number(s): "1501"
Test #37:
score: 0
Accepted
time: 1755ms
memory: 399304kb
input:
RDDUDLRDLDURULULDLDUDRDLDUDLUDLRUDLDDLLLDRRLLUURDLLRURLDRDDLLDDRDLLRULRLLUUDDULUDLLDLURRULDDRUDDURLDUURDUUULRRRULUDLRDUDLULDRUDUDLDDRRUURRDDRLRLRULURRRLRRRRURDRRLLURUDDDDDRDRDLRDLRRRLRURRRDRUDDLLUDULRULDDRLLUUUUDDULDRLDRRDULLDLDDRRLDLDRRRRDRRLDRURUDLDDDLLLURDDUDRURUUDRRRUDRRLRRLRDLDUDRRDDLLURRLRDDLR...
output:
1482
result:
ok 1 number(s): "1482"
Test #38:
score: 0
Accepted
time: 911ms
memory: 396548kb
input:
RLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRLRL...
output:
12502500
result:
ok 1 number(s): "12502500"
Test #39:
score: 0
Accepted
time: 644ms
memory: 398528kb
input:
DUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDUDU...
output:
12502500
result:
ok 1 number(s): "12502500"
Test #40:
score: 0
Accepted
time: 575ms
memory: 300108kb
input:
RDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRDRD...
output:
2501
result:
ok 1 number(s): "2501"
Test #41:
score: -100
Time Limit Exceeded
input:
LRRDULLRRUULUDUULRLLLUUDRDRLDRRLURUDRDUULRUULLRRRRDUDLLDURUUURDDRURDLRRRURRUURRULULDRUURURDLDUURRLDURDLUUDRDRLRURLLLLDLULRUUUURRRUDULRLULRLUDDULULLDRLRULRDRLRRLDDDUDUUUUDDDRUDDRDDUURDUUULLURULUDRUURDULLUDLRLDDRRUUULRLDLLULLDURLDUUDDRLLRUDDLDULRRDDDURLRRRDLDRDRDDLDULURUDRLURRUUDRDDRLDDDRDDDUDLDRUDURU...