http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=11152
外星人要在一些点上建殖民地
定义安全位置为到达任意殖民地的距离都 >= k,
问每次扩展殖民地后的安全位置,
思路:每次统计危险位置的数目
#include <stdio.h>
#include <string.h>
#include <queue>
#include <vector>
using namespace std;
#define N 10001
#define inf 1000001
#define pii pair<int,int>
int dist[N];
int vis[N],st[N];
int m,n,a,k;
int dan;
vector < pii > vec[N];
int dij(int src )
{
dist[src] = 0;
if(!vis[src])
{
vis[src] = 1;
++dan;
}
priority_queue<pii > que;
que.push(make_pair(0
该博客探讨了在外星人在特定点建立殖民地的问题中,如何利用迪杰斯特拉算法确定安全位置。当殖民地扩展时,如何计算确保每个位置到任意殖民地的距离至少为k的安全位置数量。这是一个涉及图论和最短路径计算的算法问题。
订阅专栏 解锁全文
4232

被折叠的 条评论
为什么被折叠?



