题干:
         平面上有n个圆,求使这n个圆两两相交(即每两个圆之间恰好有两个交点)后最多能把平面划分成多少个区域。
输入描述:
一个正整数t,表示有t(1≤t≤100)组数据。
接下来t行,每行一个整数n(0≤n≤1000),代表平面内圆的个数。
  输出描述:
输出共t行。每行一个正整数,表示对应的n个圆将该平面划分成的最大的区域数。  示例1
输入
3
1
2
3  输出
2
4
8  说明
第一个样例,平面只有一个圆,此时将平面划分成圆内和圆外两个区域;
  第二个样例,平面上有两个圆,两圆相交可以将平面划分成四个区域(见下图)。
解题报告:
结论题。ans=n^2 - n + 2;(我再也不直接在编辑框里面写代码了,,以后一定在本地写、、一直wa在没写else,,导致一直以为是结论推错了、、难受,,你说你这么菜,,学什么qls)
AC代码:
#include<bits/stdc++.h>
using namespace std;
 
int main()
{
    int t;
    cin>>t;
    while(t--) {
        int n;
        scanf("%d",&n);
        if(n == 0) puts("1");
        else printf("%d\n",n*n-n+2);
    }
     
    return 0;
     
}  



京公网安备 11010502036488号