列表

详情


NC229547. 巧克力蛋糕

描述

樱坂雫和中须霞正在装饰巧克力奶油蛋糕

「霞同学有什么好的装饰方案吗?」

「嗯……小霞霞觉得,小静子在这个蛋糕上用巧克力酱画出直线,然后小霞霞在直线的交点处用奶油挤出花朵怎么样?」

「可以是可以,但是这样要挤很多的奶油花朵,霞同学没问题吗?」

「诶,会很多吗?就算小静子你画出十条线,最多也就……呃……十几个交点吧?小霞霞肯定没问题的!」

「真的吗?那我就在蛋糕上画条线,之后霞同学要在每一个交点上都挤上奶油花朵,不许耍赖哦。」

「小霞霞才不会耍赖呢!一言为定!」

……

看着樱坂雫的笑容,中须霞心里突然产生了一种不好的预感。但是由于中须霞的学力太低,她不知道条直线最多能交出多少个交点,也就不知道她最多需要挤多少朵奶油花朵。你能帮她算算吗?

输入描述

第一行含有一一个整数T( )表示测试数据组数。
接下来的T行,每行含有一个整数n(),表示樱坂需用巧克力酱在蛋糕上画出的直线数目。
你可以假设蛋糕的面积无限大。

输出描述

每组测试数据输出一个数,表示中须霞最多需要挤多少朵奶油花朵。

示例1

输入:

1
10

输出:

45

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++(g++ 7.5.0) 解法, 执行用时: 203ms, 内存消耗: 2000K, 提交时间: 2022-10-20 20:31:33

#include<bits/stdc++.h>
using namespace std;
int main()
{
   long long t,n;
   cin>>t;
   while(t--)
   {   cin>>n;
       cout<<n*(n-1)/2<<endl;
   }
    return 0;
}

C(gcc 7.5.0) 解法, 执行用时: 32ms, 内存消耗: 1900K, 提交时间: 2022-10-17 20:49:04

#include<stdio.h>
int main(){
    int T;
    long long n;
    scanf("%d",&T);
    while(T--){
        scanf("%lld",&n);
        printf("%lld\n",(n-1)*n/2);
    }
}

C++(clang++ 11.0.1) 解法, 执行用时: 199ms, 内存消耗: 3032K, 提交时间: 2022-10-12 16:43:48

#include<iostream>
using namespace std;
long n,m;
int main(){
	cin>>n;
	while(n-->0){
		cin>>m;
		cout<<(m-1)*m/2<<endl;
	}
}

Python3 解法, 执行用时: 633ms, 内存消耗: 6212K, 提交时间: 2022-10-17 17:45:03

for _ in range(int(input())):
    n = int(input())
    print(n*(n-1)//2)

上一题