YYH的王国(NOIP模拟赛Round 6)

题目描述

YYH拥有一个有n个城市的国家,编号为1~n。其中城市i到城市j的路径长度为i和j的最小公倍数。现在YYH想建一些高速公路,使得任意两座城市都能通过高速公路直接或间接到达。建造一条高速公路的代价为这条高速公路的长度,他想知道最小代价是多少?

输入输出格式

输入格式:

第一行输入一个整数,T,表示有T组数据。

接下来T行每行输出一个整数n,表示有n个国家

输出格式:

输出T行,每行一个数字表示最小代价

好吧,这道题还是结论题,

我们很容易就发现如果所以点都向1连边,那么答案一定最优。

所以我们只要计算2+3+4+5+...+n即可。

记住!不要智障地用for循环!

等差数列!!

#include<iostream>
#include<cstdio>
using namespace std;
long long t,n,num;
unsigned long long ans;
int main(){
    scanf("%d",&t);
    for(int i=1;i<=t;i++)
    {
        ans=0;
        scanf("%d",&n);
        ans=(1+n)*n/2-1;
        printf("%lld
",ans);
    }
}
原文地址:https://www.cnblogs.com/ghostfly233/p/6929734.html