Submission

Status:

[P-SSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: code

Problemset: Path Finding

Language: cpp

Time: 0.002 second

Submitted On: 2026-08-02 16:05:06

#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;
    bool check=true;
    int x=0,y=0;
    for (int i=0;i<npnt;i++,chr++){
        cin>>y>>x;
        if (i==0){
            mapp[y][x]=char(chr);
            pi=x;pj=y;      //pi=เเนวนอน,pj=เเนวตั้ง
            continue;
        }
        if (x<0 || x>N || y<0 || y>N ){
            cout<<"Out of range";
            check=false;
            break;
        }
        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=true){
        for (int i=0;i<N;i++){
            cout<<mapp[i]<<"\n";
        }
    }
    return 0;
}