题目名称 838. 子集
输入输出 subseta.in/out
难度等级 ★★★★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 11
题目来源 Gravatarcqw 于2012-07-04加入
开放分组 全部用户
提交状态
分类标签
动态规划
分享题解
通过:8, 提交:43, 通过率:18.6%
Gravataryaopr0708 100 0.000 s 0.00 MiB C++
Gravatarop_组撒头屯 100 0.000 s 0.00 MiB C++
Gravatar了反取字名我擦 100 0.020 s 4.47 MiB C++
GravatarSnowDancer 100 0.023 s 23.36 MiB Pascal
Gravatarfuhao 100 0.025 s 1.17 MiB Pascal
GravatarFoolMike 100 0.031 s 4.87 MiB C++
GravatarHyoi_cerron 100 0.034 s 4.87 MiB C++
GravatarQhelDIV 100 0.198 s 3.93 MiB C++
GravatarCC 90 0.057 s 0.54 MiB C++
Gravatar了反取字名我擦 90 0.146 s 3.86 MiB C++
本题关联比赛
20120704
关于 子集 的近10条评论(全部评论)
第一次写仙人掌上的dp……
GravatarFoolMike
2017-08-26 12:21 2楼
Gravatar_stranger
2015-10-03 19:25 1楼

838. 子集

★★★★★   输入文件:subseta.in   输出文件:subseta.out   简单对比
时间限制:1 s   内存限制:128 MiB

一个简单图是一个无向图,图中没有自环边,也没有重边,重边是指某两条边的两端顶点均相同。给你一个简单图,图中每个顶点都有一个权值,每一条边都至多属于一个简单圈,你的任务是找出这样一个顶点的集合,集合中任意两个顶点间不相邻,并且集合中顶点的权值和最大。

输入格式:
第一行为一个整数n(1<=n<=10000),表示顶点的个数。
第二行有n个整数,(0<=每个整数<10000),第i个数表示第i个顶点的权值。
第三行有一个整数m,表示边数。
接下来的m行,每行有两个整数a,b(1<=a,b<=n),表示在顶点a,b之间有一条边。

输出格式:
对于每一个测试数据,输出一个整数,表示权值最大的独立集的权值和。


样例:
subseta.in
5
1 2 1 2 0
6
1 2
2 3
3 1
2 4
4 5
5 2

subseta.out
3