끄적끄적 코딩
article thumbnail

당근을 최대한 심었을 때의 모양을 출력하는 문제입니다.

상하좌우에 당근이 있으면 심을 수 없고
밭의 크기와 심어져있는 당근의 위치가 주어질 때
최대로 심었을 때의 밭의 모양을 그려야합니다.

심어져있는 당근은 하나이므로 항상 체스판 모양과 같은 결과값이 나옵니다.

심어져있는 당근의 x, y의 합이 2로 나누어떨어지는 경우
밭에서 좌표 x와 y의 합이 2로 나누어떨어지는 곳을 전부 당근을 심습니다.

나누어 떨어지지 않는경우
밭에서 좌표 x와 y의 합이 2로 나누어떨어지지 않는 곳에 전부 당근을 심습니다.

그리고 이를 출력해줍니다.

 

#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;

int main(int argc, char *argv[])
{
	int n, r, c;
	int map[110][110];

	cin >> n >> r >> c;

	if ((r + c) % 2 == 0) {
		for (int i = 1; i <= n; ++i) {
			for (int j = 1; j <= n; ++j) {
				if ((i + j) % 2 == 0) {
					cout << "v";
				}
				else {
					cout << ".";
				}
			}
			cout << endl;
		}
	}
	else {
		for (int i = 1; i <= n; ++i) {
			for (int j = 1; j <= n; ++j) {
				if ((i + j) % 2 == 0) {
					cout << ".";
				}
				else {
					cout << "v";
				}
			}
			cout << endl;
		}
	}

	return 0;
}

검색 태그