체스판의 크기를 나타내는 입력 N이 주어집니다. 여기서 작업은 N 값에 대해 두 비숍이 서로 공격할 수 없도록 NXN 체스판에 배치할 수 있는 비숍의 수를 찾는 것입니다. 예를 들어 이해합시다.
입력 - N=2
출력 − N*N 체스판에 놓을 수 있는 최대 비숍 수 − 2(위 그림 참조)
설명 − 위에 묘사된 바와 같이 모순되지 않는 유일한 위치는 감독이 있는 곳입니다. 최대 2X2 체스판용 비숍.
입력 - N=5
출력 − N*N 체스판에 놓을 수 있는 최대 비숍:8(위 그림 참조)
아래 프로그램에서 사용된 접근 방식은 다음과 같습니다.
-
체스판 차원에 대한 입력으로 정수 값 N을 사용합니다.
-
이 N을 totalBishops(int n)에 인수로 전달합니다.
-
N<1개의 잘못된 입력의 경우 주교 수=0입니다.
-
N=1의 경우 1개의 위치만, 비숍 수=1입니다.
-
다른 비숍은 2*(N-1)
-
이 결과를 가변 비숍에 저장합니다.
-
결과를 반환합니다.
예
#include <iostream> //to return maximum bishops possible int totalBishops(int n){ int bishops=0; if (n < 1) bishops= 0; else if (n == 1) bishops= 1; else bishops= 2 * (n - 1); return bishops; } int main(){ int N = 15; //for chessboard dimensions N*N printf("%d" ,totalBishops(N)); return 0; }
출력
위의 코드를 실행하면 다음과 같은 출력이 생성됩니다 -
28