sinceirt 被打脸的潇洒哥(规律题型)

链接:https://ac.nowcoder.com/acm/contest/318/M
来源:牛客网

题目描述
“画个圈圈诅咒你!”
在一次青青草原ACM个人赛中,潇洒哥被喜洋洋以30s罚时压制,委屈的当了个第二。潇洒哥蹲在角落说出了他的口头禅,并画起了圈圈。
突然,他想出了一个有趣的题目,跑去给喜洋洋做。喜洋洋看到题目后懵逼了,但是看到潇洒哥脸上欠揍的笑容就不爽,暗想一定要做出来狠狠的打潇洒哥的脸。
于是,他以上厕所为名义跑出来用手机把题目发给了你,希望你能帮你做出来让他可以嘲讽潇洒哥。
你收到的题目如下:
平面上有n个圆,求使这n个圆两两相交(即每两个圆之间恰好有两个交点)后最多能把平面划分成多少个区域。

输入描述:
一个正整数t,表示有t(1≤t≤100)组数据。
接下来t行,每行一个整数n(0≤n≤1000),代表平面内圆的个数。
输出描述:
输出共t行。每行一个正整数,表示对应的n个圆将该平面划分成的最大的区域数。
示例1
输入
复制
3
1
2
3
输出
复制
2
4
8
说明
第一个样例,平面只有一个圆,此时将平面划分成圆内和圆外两个区域;
第二个样例,平面上有两个圆,两圆相交可以将平面划分成四个区域(见下图)。
在这里插入图片描述

规律题型
f[n] = n * n - n + 2
特判 n == 0, f[0] = 1

#include <stdio.h>
typedef long long ll;
int main() {
  ll t, x;
  scanf("%lld", &t);
  while (t--) { 
    scanf("%lld", &x);
    if (x == 0) printf("1\n");
    else printf("%lld\n", x*x-x+2);
  }
  return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值