B. Hierarchy

http://codeforces.com/problemset/problem/17/B

用邻接矩阵建图后,

设cost[v]表示去到顶点v的最小值。

很多个人去顶点v的话,就选最小的那个就OK

然后,如果有大于等于2个人的cost[v]是inf的,就不符合boss只有一个这个规矩。-1

不应该只统计有孤立点就输出-1,因为m可以等于0(坑)

另外这个图是不会有环的,因为有环就表明相对大小乱了。

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <algorithm>
#define IOS ios::sync_with_stdio(false)
using namespace std;
#define inf (0x3f3f3f3f)
typedef long long int LL;

#include <iostream>
#include <sstream>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <string>
const int maxn = 1e3 + 20;
int e[maxn][maxn];
int cost[maxn];
struct node {
    int u, v, w;
    int tonext;
}E[10000 + 20];
int first[maxn];
int has[maxn];
int num;
void add(int u, int v, int w) {
    ++num;
    E[num].u = u;
    E[num].v = v;
    E[num].w = w;
    E[num].tonext = first[u];
    first[u] = num;
}
int a[maxn];
void work() {
    int n;
    cin >> n;
    for (int i = 1; i <= n; ++i) {
        cin >> a[i];
    }
    int m;
    cin >> m;
    memset(e, 0x3f, sizeof e);
    for (int i = 1; i <= m; ++i) {
        int u, v, w;
        cin >> u >> v >> w;
        if (a[u] > a[v]) {
            has[v] = 1;
            has[u] = 1;
            e[u][v] = min(e[u][v], w);
        }
    }
    memset(cost, 0x3f, sizeof cost);
    for (int i = 1; i <= n; ++i) {
        for (int j = 1; j <= n; ++j) {
            if (e[i][j] != inf) {
                add(i, j, e[i][j]);
            }
        }
    }
    for (int i = 1; i <= n; ++i) {
        for (int j = first[i]; j; j = E[j].tonext) {
            int v = E[j].v;
            cost[v] = min(cost[v], E[j].w);
        }
    }
    int ans = 0;
    int t = 0;
    for (int i = 1; i <= n; ++i) {
        if (cost[i] == inf) { //不能到达
            t++; //有一个没有老板了,
            if (t == 2) { //2个没有就不行了
                cout << -1 << endl;
                return;
            }
            continue;
        }
        ans += cost[i];
    }
    cout << ans << endl;
}

int main() {
#ifdef local
    freopen("data.txt","r",stdin);
#endif
    IOS;
    work();
    return 0;
}
时间: 2024-10-13 17:38:22

B. Hierarchy的相关文章

Android性能调优篇之Hierarchy Viewer工具的使用

详细内容请查看我的简书地址:Android性能调优篇之Hierarchy Viewer工具的使用 或者我的个人博客地址:Android性能调优篇之Hierarchy Viewer工具的使用

Bounding Volume Hierarchy BVH in OpenCASCADE

Bounding Volume Hierarchy BVH in OpenCASCADE [email protected] Abstract. Bounding Volume Hierarchy(BVH) organizes geometric objects in the tree based on spatial relationships. Each node in the tree contains an axis-aligned bounding box of all the obj

Salesforce用Apex判断Role Hierarchy的简单代码示例

由于role不同于Profile,带有阶层性质,所以有一些自定义功能要依赖于这种阶层的设定.这样就涉及到role hierarchy的判断问题. 我是一个绝懒之人,所以去网上搜了一下,能找到的方案都或多或少有些缺陷 . 我所提供的方案也是如此,但是想比于浪费太多SOQL查询次数来讲,role的数量不超过50000条已经是足够好了.// 这里Update一下,其实根本不会有那么多的Role,因为默认500,向Salesforce技术支持提票才能达到10000. Talk is cheap, sho

关于The hierarchy of the type TestBeforeAdvice is inconsistent的问题

今天准备写一个spring aop的demo,创建了TestBeforeAdvice类,该类实现了MethodBeforeAdvice接口,eclipse报了"The hierarchy of the type TestBeforeAdvice is inconsistent"的错误. 后百度找到原因:spring-aop.jar要依赖aopalliance.jar,所以需要导入aopalliance.jar. 以后碰到该问题,可考虑是否有依赖的jar未到入.

JavaPersistenceWithHibernate第二版笔记-第六章-Mapping inheritance-004Table per class hierarchy(@Inheritance..SINGLE_TABLE)、@DiscriminatorColumn、@DiscriminatorValue、@DiscriminatorFormula)

一.结构 You can map an entire class hierarchy to a single table. This table includes columns for all properties of all classes in the hierarchy. The value of an extra type discriminator column or formula identifies the concrete subclass represented by a

Warning: Attempt to present on whose view is not in the window hierarchy!

当我想从一个VC跳转到另一个VC的时候,一般会用 - (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^)(void))completion;当然也可以用导航push. 有时会遇到了此类警告:Warning: Attempt to present on whose view is not in the window hier

The hierarchy of the type GreetingBeforeAdvice is inconsistent

今天照着<spring3.x企业应用开发实战>敲代码时,碰到这个问题,找了一下,发现是缺少jar包引起的问题. The hierarchy of the type GreetingBeforeAdvice is inconsistent 直译的话,是类的层次结构不一致. 怎么理解呢? 当前的类继承于某个类,这个类或者这个类继承的类或者再往上继承的某个类所在的jar包没有被引入. 具体到自己的jar包问题 自己的spring引入jar包有 添加上缺失的jar包 aopalliance-1.0.j

HierarchyRequestError:Node cannot be inserted at the specified point in the hierarchy

问题描述: 用jquery的ajax加载html片段,出现该错误 HierarchyRequestError:Node cannot be inserted at the specified point in the hierarchy 解决: 未指定加载数据返回类型,即dataType,注意不是datatype dataType:'html' ok!

《CS:APP》 chapter 6 The Memory Hierarchy笔记

The Memory Hierarchy 6.1 Storage Technologies The earliest IBM PCs didn't even have a hard disk. 让我惊奇的是早期的IBM直接没有硬盘... 6.1.1 Random-Access Memory Random-access memory(RAM) comes in two varieties- static anddynamic . Static RAM (SRAM) is faster and si

Inheritance with EF Code First: Part 1 – Table per Hierarchy (TPH)

以下三篇文章是Entity Framework Code-First系列中第七回:Entity Framework Code-First(7):Inheritance Strategy 提到的三篇.这三篇文章写的时间有点久远,还是在2010年,提到EF应该在4.1版本之前,使用的还是ObjectContext而不是现在的DbContext,内容供参考 -------------------------------------------------------------------------