HDU - 5934】的更多相关文章

p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-size: 10.5000pt } h1 { margin-top: 5.0000pt; margin-bottom: 5.0000pt; text-align: center; font-family: 宋体; color: rgb(26,92,200); font-weight: bold; fo…
http://acm.hdu.edu.cn/showproblem.php?pid=5934 题意:有N个炸弹,每个炸弹有一个坐标,一个爆炸范围和一个爆炸花费,如果一个炸弹的爆炸范围内有另外的炸弹,那么如果该炸弹爆炸,就会引爆所有爆炸范围内的炸弹,求让所有炸弹爆炸的最小花费. 思路:重现的时候来不及做.先n^2的把每个炸弹爆炸范围内的炸弹都连一条有向边,然后再找强连通分量缩点,这样会形成多个DAG,然后对于每个DAG找一个入度为0的点,找这个入度为0的点里面耗费最小的去引爆,就可以了. #inc…
Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10    Accepted Submission(s): 3 Problem Description There are N bombs needing exploding.Each bomb has three attributes: exploding radius ri,…
Bomb Problem Description There are N bombs needing exploding.Each bomb has three attributes: exploding radius ri, position (xi,yi) and lighting-cost ci which means you need to pay ci cost making it explode.If a un-lighting bomb is in or on the border…
Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1853    Accepted Submission(s): 608 Problem Description There are N bombs needing exploding. Each bomb has three attributes: exploding radius…
#include<map> #include<set> #include<ctime> #include<cmath> #include<stack> #include<queue> #include<string> #include<vector> #include<cstdio> #include<cstdlib> #include<cstring> #include&l…
思路:建一个有向图,指向能引爆对象,把强连通分量缩成一点,只要点燃图中入度为0的点即可.因为入度为0没人能引爆,不为0可以由别人引爆. 思路很简单,但是早上写的一直错,改了半天了,推倒重来才过了... #include<cstdio> #include<set> #include<stack> #include<cstring> #include<algorithm> #define ll long long using namespace st…
题意: 给出n个炸弹的信息 :坐标x , 坐标y , 爆炸半径 , 成本: 如果一个炸弹被引爆那这个范围的都爆炸 , 问最小的成本是多少? 题意:首先先来个n^2 暴力出某个炸弹爆炸波及的其他炸弹,用一条有向边来连接 , 然后找到强连通分量 ,缩点 , 就可以形成一张新的有向图 , 那是不是就是所有没有点连接的点也就是入度为0 的点的权值和呀.想下某个炸弹只有出去的,没有进来的是不是必须得爆炸 .好这道题就可以ac了 , 比赛的时候可能比较蒙蔽 ,强连通的性质没有想清楚 , 想到是强连通 , 但…
tarjan 视频讲解 /** * 题目链接:https://vjudge.net/problem/HDU-5934 * 题意:给你n个炸弹,引爆每个炸弹会有一定的花费.每个炸弹给出坐标x,y,半径r,引爆花费: * 引爆一个炸弹会把范围内的炸弹引爆,连锁反应. 现在想把所有炸弹引爆的最小花费. * * 解题思路:强连通缩点.根据a能够引爆b,可以在建一条a到b的单向边.如果是一个强连通(这一部分的图, * 任意两点都可以相互到达)那么就把这个强连通分量变成一个点,值最分量的最小值.这样图就变成…
[AC] #include<bits/stdc++.h> using namespace std; typedef long long ll; int n; ; ; const int inf=0x3f3f3f3f; struct node { double x; double y; double r; int c; }a[maxn]; struct edge { int to; int nxt; }e[maxm]; int head[maxn],tot; int dfn[maxn],low[…