IMBA?

As a kind problem setter, I should warn you, as you may already notice the sample output, it’s a horrible problem and very IMBA (imbalanced). 
Today we learn circle, a circle is a simple shape of Euclidean geometry consisting of those points in a plane that are a given distance from a given point, the center. The distance between any of the points and the center is called the radius. 
Circles are simple closed curves which divide the plane into two regions: an interior and an exterior. In everyday use, the term "circle" may be used interchangeably to refer to either the boundary of the figure, or to the whole figure including its interior; in strict technical usage, the circle is the former and the latter is called a disk. 
A circle can be defined as the curve traced out by a point that moves so that its distance from a given point is constant. A circle may also be defined as a special ellipse in which the two foci are coincident and the eccentricity is 0. Circles are conic sections attained when a right circular cone is intersected by a plane perpendicular to the axis of the cone. 
Now let’s draw a circle with your program. Given a radius R, we draw a circle in a (2*R + 1) * (2*R + 1) rectangle, set the center of circle at (R, R) (0-based), for all point, if the square root of the difference between the square of its distance to the center and the square of the radius is less than 1.732050807569877293527446341505872366942805253810380628055806979451933016908800037081146186757248575675626141415406703029969945094998952478
81165551209437364852809323190230558206797482010108467492326501531234326690332288665067225466892183797122704713166036786158801904998653737985
9389467650347506576051, draw a star (‘*’), otherwise draw a blank. 
Refer to the output for more details. To avoid Presentation Error, you should output exactly the same characters in each row of one test case. The sample output are not completely standard for some non-shown blanks, take care. 

Input

The first line contains a single integer T, indicating the number of test cases. 
Each test case contains one integer R. 

Technical Specification 
1. 1 <= T <= 10 
2. 3 <= R <= 18 

Output

For each test case, output the case number in the first line, then a circle required in the description.

Sample Input

2
10
13

Sample Output

Case 1:
         ***
      *       *
    *           *
   *             *
  *               *

 *                 *


*                   *
*                   *
*                   *


 *                 *

  *               *
   *             *
    *           *
      *       *
         ***
Case 2:
            ***
        *         *
      *             *



  *                     *

 *                       *



*                         *
*                         *
*                         *



 *                       *

  *                     *



      *             *
        *         *
            ***

        
  

Hint

If you can’t output the sample output, or you get a Wrong Answer and then find your program didn’t output as the sample, please don’t ask me why or talk to your teammate,
 “IS iSea a SX? Obviously wrong sample! ”, think, and think again.

题意:让你打印一个圆

给定一个半径,我们画一个圆(2 * R + 1) * (2 * R + 1)矩形,外面到圈的中心(R, R)(基于),对所有点,如果根号的区别的平方距离中心和半径的平方小于1.732050807569877293527446341505872366942805253810380628055806979451933016908800037081146186757248575675626141415406703029969945094998952478

81165551209437364852809323190230558206797482010108467492326501531234326690332288665067225466892183797122704713166036786158801904998653737985

平方小于的哪一出数字:实际意义是根号3

思路就是:直接公式(i-r)*(i-r)+(j-r)*(j-r)-r*r<=3for循环输出即可

#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
int main()
{
	int n;int r;
	scanf("%d",&n);int y = 1;
	while(n--)
	{
		scanf("%d",&r);printf("Case %d:\n",y);y++;
		for(int i=0;i<r*2+1;++i)
		{
			for(int j = 0;j<r*2+1;++j)
			{
				int step = (i-r)*(i-r)+(j-r)*(j-r);
				if(abs(step - r*r)<=3)
				{
					printf("*");
				}
				else{
					printf(" ");
				}
			}	
			printf("\n");
		}
	}
	return 0;
 } 

猜你喜欢

转载自blog.csdn.net/qq_43568078/article/details/89016219