※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 27213번 문제인 Граничные клетки이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/27213 

 

27213번: Граничные клетки

У Ани есть клетчатый листок бумаги, на котором она нарисовала прямоугольник размером $m \times n$. После этого она раскрасила клетки прямоугольн

www.acmicpc.net

R행 C열의 격자판의 테두리에 있는 격자칸의 수를 세어 출력하는 문제이다.

 

R과 C가 모두 2 이상인 경우 상변과 하변 각각 C칸, 좌변과 우변 각각 R칸에서 중복되는 네 꼭짓점 칸 4칸을 뺀 (R+C)*2-4가 문제의 답이 된다.

 

R 또는 C가 1인 경우에는 둘 중 큰 값(또는 R+C-1)이 문제의 답이 됨에 유의하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int R, C;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cin >> R >> C;
	if (R == 1 || C == 1) cout << R + C - 1;
	else cout << (R + C) * 2 - 4;
}
728x90

+ Recent posts