알고리즘/구현

상하좌우

HJ39 2023. 1. 6. 14:19

해당 문제는 이것이 코딩테스트다with 파이썬 예제 4-1번 입니다.

 

#include <bits/stdc++.h>

void LRUD(){
    int n;
    cin>>n;
    
    int x = 1;  //x 좌표
    int y = 1;  //y 좌표
    
    cin.ignore();   // n을 입력하고 뒤에 \n문자열이 남아 있어 버퍼에서 한 문자를 제거 해야 한다.
    
    string input;
    getline(cin, input);   // 문자열 입력
    
    // 공백 문자는 점프
    for(int i=0; i<input.size();i= i+2){
        
        if(input[i] == 'L'){
            if( y <= 1){
                continue;
            }
            else{
                y-=1;
            }
        }
        else if(input[i] == 'R'){
            if( y >= n){
                continue;
            }
            else{
                y+=1;
            }
        }
        else if(input[i] == 'U'){
            if( x <= 1){
                continue;
            }
            else{
                x-=1;
            }
        }
        else if(input[i] == 'D'){
            if( x >= n){
                continue;
            }
            else{
                x+=1;
            }
        }
    }
    
    cout<<x<<" "<<y<<endl;
}

 

'알고리즘 > 구현' 카테고리의 다른 글

게임 개발  (0) 2023.01.06
왕실의 나이트  (0) 2023.01.06
시각  (0) 2023.01.06