Submission
Status:
[PPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: kf._.exe
Problemset: Path Finding
Language: cpp
Time: 0.002 second
Submitted On: 2025-10-16 21:28:02
#include<bits/stdc++.h>
using namespace std;
#define fastio ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define dbg(x) cout << #x << " = " << x << '\n';
#define int long long
#define dd double
#define ld long double
void solve(){
int n,m;cin >> n >> m;
vector<string> s(n,string(n,'_'));
int a[m],b[m];
char c = 'A';
for(int i=0;i<m;++i) cin >> a[i] >> b[i];
for(int i=0;i<m;++i){
if(a[i] >= n || a[i] < 0 || b[i] >= n || b[i] < 0 ){
cout << "Out of range\n";
return;
}
}
int r1,c1,r2=0,c2=0;
for(int k=0;k<m-1;++k){
r1 = a[k];r2 = a[k+1];
c1 = b[k];c2 = b[k+1];
int dr = abs(r1-r2);int dirr = (r1 < r2 )?1:-1;char cr = (dirr==1)? 'v' : '^';
int dc = abs(c1-c2);int dirc = (c1 < c2)?1:-1;char cc = (dirc==1)? '>' : '<';
int i,ii;
// col
for(i=1;i<dc;++i) s[r1][c1 + i*dirc] = cc;
//row
for(ii=0;ii<dr;++ii) s[r1 + ii*dirr][c2] = cr;
s[r1][c1] = c++;
s[r2][c2] = c;
}
for(auto &x : s){
for(auto &y : x) cout << y;
cout << "\n";
}
}
int32_t main(){
fastio;
int T = 1;
//cin >> T
while(T--) solve();
return 0;
}