[코드트리] dx dy technique / 방향에 맞춰 이동

2024. 9. 5. 16:46·PS

 

 


 

문제

 

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

 

 

 

 

실행 결과

 

 

 

 

 

코드(c++)

#include <iostream>
#include <string>
using namespace std;

int main() {
  int n;
  cin >> n;

  // 초기 좌표 위치
  int x = 0, y = 0;

  // 동서남북에 따른 좌표의 차 (dx, dy 테크닉 활용)
  int dx[4] = {1, -1, 0, 0};
  int dy[4] = {0, 0, -1, 1};

  for (int i = 0; i < n; i++) {
    string direction;
    int distance;
    cin >> direction >> distance;

    int dir_num;

    // 방향에 따른 인덱스 결정
    if (direction == "E")
      dir_num = 0;
    else if (direction == "W")
      dir_num = 1;
    else if (direction == "S")
      dir_num = 2;
    else if (direction == "N")
      dir_num = 3;

    x += dx[dir_num] * distance;
    y += dy[dir_num] * distance;
  }

  cout << x << " " << y << endl;

  return 0;
}

 

 

 

 

코드 설명

dx, dy 테크닉을 이용하여 동서남북에 따른 x,y 좌표 이동 값을 배열에 저장한다.

입력받은 방향에 따라 배열 인덱스 값을 받아 거리만큼 이동하도록 반복문을 돌려준다!

상하좌우 or 동서남북과 같이 패턴이 정해져 있는 좌표 값을 다룰 때 코드를 간결히 작성할 수 있다😁

 

 

 


 

 

저작자표시 (새창열림)

'PS' 카테고리의 다른 글

[코드트리] 정수 명령 처리 5  (0) 2024.09.07
[코드트리] 문자에 따른 명령 2  (0) 2024.09.06
[코드트리 조별과제] 삽입 정렬 구현  (0) 2024.08.18
[코드트리 조별과제] 버블 정렬 구현  (0) 2024.08.11
[코드트리] 격자로서의 2차원 배열: 동전이 있는 위치  (0) 2024.07.14
'PS' 카테고리의 다른 글
  • [코드트리] 정수 명령 처리 5
  • [코드트리] 문자에 따른 명령 2
  • [코드트리 조별과제] 삽입 정렬 구현
  • [코드트리 조별과제] 버블 정렬 구현
abyss-s
abyss-s
프론트엔드 개발합니다!
  • abyss-s
    abyss-s의 블로그입니다.
    abyss-s
  • 전체
    오늘
    어제
    • 분류 전체보기 (189) N
      • Web (16)
        • JavaScript (6)
        • TypeScript (1)
        • React (5)
        • Vue (0)
        • Storybook (1)
        • Next.js (1)
      • Backend & Infra (8)
        • Database (3)
        • Node.js (2)
        • SpringBoot (1)
      • PS (71)
      • CS (30)
        • OS (13)
        • Structure & Algorithm (5)
        • Network (10)
        • 정보처리기사 (2)
      • Language (18)
        • OOP (1)
        • JAVA (13)
        • C++ (4)
      • Activities (13) N
        • 멋쟁이 사자처럼 (2)
        • OSSCA (3)
        • LG U+ URECA (4) N
        • Project (2)
      • AI (0)
      • Git & Github (5)
      • Notion (1)
      • IT (4)
      • Statistics (11)
      • Book (4)
      • Diary (1)
      • Game (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 깃허브
    • 백준
    • 트위터
  • 공지사항

    • abyss-s의 티스토리에 오신 것을 환영합니다.
  • 인기 글

  • 태그

    자바스크립트
    운영체제
    BAEKJOON
    그리디
    Python
    OS
    DP
    생활코딩
    Java
    React
    자바기반응용프로그래밍
    파이썬
    C++
    네트워크
    github
    BFS
    JavaScript
    코드트리
    백준
    통계학
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
abyss-s
[코드트리] dx dy technique / 방향에 맞춰 이동
상단으로

티스토리툴바