Submission

Status:

[PPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: code

Problemset: Path Finding

Language: cpp

Time: 0.005 second

Submitted On: 2026-08-02 16:19:19

#include <bits/stdc++.h>
using namespace std;
int main (){
    int N;cin>>N;
    vector <string> mapp(N,string(N,'_'));
    int npnt;cin>>npnt;
    int chr=65,pi=0,pj=0;
    int check=1;
    int x=0,y=0;

    for (int i=0;i<npnt;i++,chr++){
        cin>>y>>x;
        if (x<0 || x>N || y<0 || y>N ){
            cout<<"Out of range";
            check=0;
            break;
        }else{
            if (i==0){
                mapp[y][x]=char(chr);
                pi=x;pj=y;
                continue;
            }
            if (pi<x){
                for (int i=pi+1;i<=x;i++){
                    mapp[pj][i]='>';
                    pi=i;
                }
            }
            if (pi>x){
                for (int i=pi-1;i>=x;i--){
                    mapp[pj][i]='<';
                    pi=i;
                }
            }
            if (pj<y){
                if (mapp[pj][pi]==char(chr-1)){
                    for (int i=pj+1;i<=y;i++){
                        mapp[i][pi]='v';
                        pj=i;
                    }
                }else{
                    for (int i=pj;i<=y;i++){
                        mapp[i][pi]='v';
                        pj=i;
                    }
                }
            }
            if (pj>y){
                if (mapp[pj][pi]==char(chr-1)){
                    for (int i=pj-1;i>=y;i--){
                        mapp[i][pi]='^';
                        pj=i;
                    }
                }else{
                    for (int i=pj;i>=y;i--){
                        mapp[i][pi]='^';
                        pj=i;
                    }
                }
            }
            mapp[pj][pi]=char(chr);
            pi=x;pj=y;
        }
    }
    if (check==1){
        for (int i=0;i<N;i++){
            cout<<mapp[i]<<"\n";
        }
    }
    return 0;
}