多比特杯武汉工程大学程序设计竞赛——JJC的难题

吐槽

题目被人说垃圾了,还有有点知识点的吧,呜呜呜呜呜呜呜,好难过,呜呜呜呜呜呜呜 ~~~~~~~~~

思维

  1. 首先题干要求是使用最小的边权之和使得 n n n 个点连通,那么就是最小生成树。同时边权有 1 ∼ m 1 \sim m 1m 那么我们只需要使用 n − 1 n - 1 n1 条边就好了。那么最小的边权就是 ∑ i = 1 n i \sum_{i = 1}^{n}{i} i=1ni

开long long!!!开long long!!!开long long!!!开long long!!!开long long!!!开long long!!!开long long!!!

  1. 要求图的边权之和等于顶点 1 1 1 n n n 的最短路径,那么这显然是以 1 , n 1, n 1,n 为端点的链,那说明是一定存在拓扑序的,那么答案之一就是 1 ∼ n 1 \sim n 1n
#include <bits/stdc++.h>

using namespace std;

int n, m;

int main() {
    cin >> n >> m;
    cout << 1ll * n * (n - 1) / 2 << endl;
    for (int i = 1; i <= n; i ++ ) {
        cout << i << ' ' ;
    }
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值