zoukankan      html  css  js  c++  java
  • CSU

    一条‘Z’形线可以将平面分为两个区域,那么由N条Z形线所定义的区域的最大个数是多少呢?每条Z形线由两条平行的无限半直线和一条直线段组成

    Input

    首先输入一个数字T(T<100),代表有T次询问 每次询问输入一个数字N(N<1e8),代表有N条Z形线

    Output

    对于每次询问,在一行输出N条‘Z’形线所能划分的区域的最大个数为多少

    Sample Input

    2
    1
    2

    Sample Output

    2
    12
    

    Hint

    分析:

    首先考虑一个类似的问题:

    有N组直线,每组都由3条平行的直线构成,3条直线的间距可以调整。

    那么N组直线最多划分出多少个区域?

    这个问题就很容易求出来,3n(3n-1)/2+1

    本题的答案,就是把每组3条平行直线变成Z,也就是在3n(3n-1)/2+1的基础上再减2n即可

    所以:(9*n*n-7*n+2)/2

    code:

    #include<stdio.h>
    #include<algorithm>
    #include<memory.h>
    #include<math.h>
    using namespace std;
    typedef long long LL;
    #define INF 0x3f3f3f3f
    #define max_v 1005
    int main()
    {
        int t;
        scanf("%d",&t);
        LL n;
        while(t--)
        {
            scanf("%lld",&n);
            printf("%lld
    ",(9*n*n-7*n+2)/2);
        }
        return 0;
    }
  • 相关阅读:
    Java中Bitmap的实现
    链接备用
    91家纺网,利用cookies登录
    selenium验证码pic处理代码,以91家纺网为例
    91家纺网,登录代码
    91家纺网,模拟浏览器登录
    91家纺网,models
    91家纺网,setting文件
    91家纺网,更新
    91家纺网,更新
  • 原文地址:https://www.cnblogs.com/yinbiao/p/9371258.html
Copyright © 2011-2022 走看看