Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: Dark_kingdom
Problemset: นักเดินทาง
Language: cpp
Time: 0.004 second
Submitted On: 2026-10-13 23:25:13
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
string dir;
cin>>dir;
int ver = 1, hor = 1;
int max_ver = 1, max_hor =1;
for(int i = 1;i<dir.length(); i++)
{
if(dir[i] == 'D') ver++;
else if(dir[i] == 'U') ver--;
else if(dir[i] == 'R') hor++;
else if(dir[i] == 'L') hor--;
if(ver>max_ver) max_ver = ver;
if(hor>max_hor) max_hor = hor;
}
vector<vector<char>> pos(max_ver, vector<char>(max_hor, '.'));
if(dir[0] == 'D') pos[0][0] = 'a';
else return 0;
int r = 0, c = 0, cs = 1, t = 0;
while(cs < dir.length())
{
if(dir[cs] == 'D') r++;
if(dir[cs] == 'U') r--;
if(dir[cs] == 'R') c++;
if(dir[cs] == 'L') c--;
if(cs<26)
{
pos[r][c] = (char)(cs+'a');
}
else
{
pos[r][c] = (char)(t+'A');
t++;
}
cs++;
}
for(int i = 0; i<max_ver; i++)
{
for(int j=0; j<max_hor; j++)
{
cout<<pos[i][j];
}
cout<<"\n";
}
return 0;
}