본문 바로가기

Algorithm/Code Fights (Code Signal)

Aracade Intro #42 bishopAndPawn. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

Aracade Intro #42 bishopAndPawn. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar


Q.


Given the positions of a white bishop and a black pawn on the standard chess board, determine whether the bishop can capture the pawn in one move.


The bishop has no restrictions in distance for each move, but is limited to diagonal movement. Check out the example below to see how it can move:


 체스보드에서 하얀색 비숍과 검은색 폰의 위치가 주어지는데, 비숍이 폰을 한번의 움직임으로 잡을 수 있는지 확인해봐라


 비숍은 움직임의 거리 제한은 없지만, 대각선으로만 움직일 수 있다. 아래 예제를 보자



e.g.


Input -> bishop = "a1" and pawn = "c3"


Output -> bishopAndPawn(bishop, pawn) = true



Input -> bishop = "h1" and pawn = "h3"


Output -> bishopAndPawn(bishop, pawn) = false



//Process

//1. Input position of bishop and pawn

//2. Compare diff1 amount of two alphabet position

//3. Compare diff2 amount of two number position

//4. If diff1 equals diff2, then it's true

// 4.1. If not -> it's false

//5. Return answer and finish



//처리과정

//1. 비숍과 폰의 위치를 입력받는다.

//2. 2개의 알파벳 위치 차이값을 구한다

//3. 2개의 숫자 위치 차이값을 구한다.

//4. 두 차이값이 같으면 -> true

// 4.1. 다르면 -> false

//5. 답을 리턴한다.




Code.. Lemme see code!!!!!


코드.. 코드를 보자!!!!!




bool bishopAndPawn(std::string bishop, std::string pawn) {

     

    bool answer = false;

    int diff1;

    int diff2;

    

    if (bishop[0] > pawn[0]) 

    {

        diff1 = bishop[0] - pawn[0];

    }

    else

    {

        diff1 = pawn[0] - bishop[0];

    }

    

    if (bishop[1] > pawn[1]) 

    {

        diff2 = bishop[1] - pawn[1];

    }

    else

    {

        diff2 = pawn[1] - bishop[1];

    }

    

    if (diff1 == diff2)

    {

        answer = true;

    }

    

    return answer;

}





Something else you might like..




2018/12/14 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #41 digitDegree. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

2018/12/12 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #40 longestDigitsPrefix. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

2018/12/10 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #39 knapsackLight. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

2018/12/10 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #38 growingPlant. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

2018/12/10 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #37 arrayMaxConsecutiveSum. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar

2018/12/10 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #36 differentSymbolsNaive. Algorithm, 알고리즘, Codefights, CodeSignal, 코드파이트, 코드시그널, 예제, example, c++ java c# scalar



2018/12/16 - [Life/Health care] - L-Arginine 아르기닌 usage/side effects/dosage 효능/부작용/성인,소아 용법(2)

2018/12/02 - [Life/Health care] - Maca 마카 usage/side effects/dosage 효능/부작용/용법

2018/12/03 - [Life/Health care] - Lecithin 레시틴 usage/side effects/dosage 효능/부작용/용법



2018/11/27 - [Programming/Image Processing] - OpenCV Java complexNumber mat conjugation, 자바 켤레복소수 example code 예제코드

2018/11/28 - [Programming/Image Processing] - OpenCV How to handle single channel image matrix each pixel, add/subtract/multiply/division (1), 이미지 매트릭스 각 픽셀단위 값 조정하기 (영상처리, image processing) (1)

2018/11/28 - [Programming/Image Processing] - OpenCV How to get min/max value from matrix, 매트릭스 최소값/최대값. Java,c++,cpp,imageprocessing