FOX and Snake

                                 FOX and Snake
                          time limit per test 2 seconds
                          memory limit per test 256 megabytes

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.

Sample test(s)
input
3 3
output

…#

input
3 4
output

…#

input
5 3
output

…#

#…

input
9 9
output
#########
…#
#########
#…
#########
…#
#########
#…
#########

思路:根据最后一个例子找规律,可得奇数行的都是打印 # ,偶数行的分一下类,从规律上可知,行数%42那一行最后一个打印#,行数%40,那一行的第一个打印#,其余都打印 . ,记得换行就行。
AC代码:

#include<iostream>
using namespace std;
int main()
{   int n,m,i,j;
	scanf("%d%d",&n,&m);
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=m;j++)
		{
			if(i%2==1)
				printf("#");
			else if(i%4==2&&j==m)
				printf("#");
			else if(i%4==0&&j==1)
				printf("#");
			else printf(".");
		}
		printf("\n");
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_43965640/article/details/87531786
Fox
今日推荐