在一个平面上有一个圆和n条直线,这些直线中每一条在圆内同其他直线相交,假设没有3条直线相交于一点,试问这些直线将圆分成多少区域。
输入格式:
只有一个整数n(0<=n<100)。
输出格式:
只有一个整数,为圆被n条直线分成的区域的块数。
输入样例:
1
输出样例:
2
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
C (gcc)
答案:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
int main()
{
int n, m=2;
scanf("%d", &n);
if (n == 1)
m = 2;
else for (int k = 2; k <= n; k++) {
m = k * 2 + m - k;
}
printf("%d", m);
return 0;
}
注意要添加一个变量k来循环,求解出m。
附解题思路(草稿,较潦草)
本文仅用来记录练习作业。