-
Notifications
You must be signed in to change notification settings - Fork 0
/
a.cpp
100 lines (99 loc) · 2.28 KB
/
a.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include<iostream>
using namespace std;
int main()
{
int **a,l,k,t,i=0,j,m,*it,*jt;
long int n,r,c,sr,sc;
char s[100];
cin>>t;
it=new(int [t]);
jt=new(int [t]);
for(k=0;k<t;k++)
{
cin>>n;
cin>>r;
cin>>c;
cin>>sr;
cin>>sc;
cin>>s;
a=new(int *[r]);
for(i=0;i<r;i++)
a[i]=new(int [c]);
for(i=1;i<=r;i++)
{
for(j=1;j<=c;j++)
{
*(*(a+i)+j)=0;
}
}
for(i=1;i<=r;i++)
{
for(j=1;j<=c;j++)
{
cout<<*(*(a+i)+j);
}
}
l=0;
i=sr;
j=sc;
while(s[l]='\0')
{
if(s[l]=='N'||s[l]=='n')
{
if(*(*(a+i)+j)==0)
{
*(*(a+i)+j)=1;
i--;
}
while(*(*(a+i)+j)==1)
{
i--;
}
}
if(s[l]=='E'||s[l]=='e')
{
if(*(*(a+i)+j)==0)
{
*(*(a+i)+j)=1;
j++;
}
while(*(*(a+i)+j)==1)
{
j++;
}
}
if(s[l]=='W'||s[l]=='w')
{
if(*(*(a+i)+j)==0)
{
*(*(a+i)+j)=1;
j--;
}
while(*(*(a+i)+j)==1)
{
j--;
}
}
if(s[l]=='S'||s[l]=='s')
{
if(*(*(a+i)+j)==0)
{
*(*(a+i)+j)=1;
i++;
}
while(*(*(a+i)+j)==1)
{
i++;
}
}
l++;
}
*(it+k)=i;
*(jt+k)=j;
}
for(i=0,j=1;i<t;i++,j++)
{
cout<<"Case #"<<j<<":"<<*(it+i)<<" "<<*(jt+i)<<endl;
}
return 0;
}