acm寒假特辑 1月25日 CodeForces

A - 1 CodeForces - 510A

Fox Ciel starts to learn programming. The first task is drawing a fox! However, that turns out to be too hard for a beginner, so she decides to draw a snake instead.

A snake is a pattern on a n by m table. Denote c-th cell of r-th row as (r, c). The tail of the snake is located at (1, 1), then it’s body extends to (1, m), then goes down 2 rows to (3, m), then goes left to (3, 1) and so on.

Your task is to draw this snake for Fox Ciel: the empty cells should be represented as dot characters (’.’) and the snake cells should be filled with number signs (’#’).

Consider sample tests in order to understand the snake pattern.

Input
The only line contains two integers: n and m (3 ≤ n, m ≤ 50).

n is an odd number.

Output
Output n lines. Each line should contain a string consisting of m characters. Do not output spaces.

Examples
Input
3 3
Output

###
..#
###

Input
3 4
Output

####
...#
####

Input
5 3
Output

###
..#
###
#..
###

Input
9 9
Output

#########
........#
#########
#........
#########
........#
#########
#........
#########

解题思路:按照题意输出,奇数层全部输出’#’,剩下的偶数层分两种情况,4的倍数则先输出’#‘再输出’.’,2的倍数则反之。

//miku saiko
#include<iostream>
using namespace std;
int main()
{
	int n, m, i, j;
	cin >> n >> m;
	for (i = 1; i <= n; i++)
	{
		if (i % 2)
		{
			for (j = 1; j <= m; j++)
				cout << '#';
			cout << endl;
		}
		else
			if (i % 4==0)
			{
				cout << '#';
				for (j = 2; j <= m; j++)
				{
					cout << '.';
				}
				cout << endl;
			}
			else
			{
				for (j = 1; j < m; j++)
				{
					cout << '.';
				}
				cout << '#' << endl;
			}
	}
    return 0;
}
原文地址:https://www.cnblogs.com/gidear/p/10433279.html