POJ2139-Six Degrees of Cowvin Bacon
2016-07-10 14:00
253 查看
题目的意思是在同一电影中每头牛的距离都为1
用floyd就能简单的做出来。
#include <cstdio>
#include <algorithm>
using namespace std;
const int maxn = 300 + 10;
const int inf = 10000;
int d[maxn][maxn];
int tmp[maxn];
void floyd(int n) {
for (int k = 0; k < n; k++) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
d[i][j] = min(d[i][j], d[i][k] + d[k][j]);
}
}
}
}
int main(int argc, char const *argv[]) {
int n, m;
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
d[i][j] = inf;
if(i == j) {
d[i][j] = 0;
}
}
}
for (int i = 0; i < m; i++) {
int c;
scanf("%d", &c);
for (int j = 0; j < c; j++) {
scanf("%d", &tmp[j]);
tmp[j]--;
}
for (int j = 0; j < c - 1; j++) {
for (int k = j + 1; k < c; k++) {
d[tmp[j]][tmp[k]] = d[tmp[k]][tmp[j]] = 1;
}
}
}
floyd(n);
int sum = inf;
for (int i = 0; i < n; i++) {
int s = 0;
for (int j = 0; j < n; j++) {
s += d[i][j];
}
sum = min(sum, s);
}
printf("%d\n", sum * 100 / (n-1));
return 0;
}
用floyd就能简单的做出来。
#include <cstdio>
#include <algorithm>
using namespace std;
const int maxn = 300 + 10;
const int inf = 10000;
int d[maxn][maxn];
int tmp[maxn];
void floyd(int n) {
for (int k = 0; k < n; k++) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
d[i][j] = min(d[i][j], d[i][k] + d[k][j]);
}
}
}
}
int main(int argc, char const *argv[]) {
int n, m;
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
d[i][j] = inf;
if(i == j) {
d[i][j] = 0;
}
}
}
for (int i = 0; i < m; i++) {
int c;
scanf("%d", &c);
for (int j = 0; j < c; j++) {
scanf("%d", &tmp[j]);
tmp[j]--;
}
for (int j = 0; j < c - 1; j++) {
for (int k = j + 1; k < c; k++) {
d[tmp[j]][tmp[k]] = d[tmp[k]][tmp[j]] = 1;
}
}
}
floyd(n);
int sum = inf;
for (int i = 0; i < n; i++) {
int s = 0;
for (int j = 0; j < n; j++) {
s += d[i][j];
}
sum = min(sum, s);
}
printf("%d\n", sum * 100 / (n-1));
return 0;
}
相关文章推荐
- mpeg4标准包含{xvid\divx,h264\avc}
- 九九乘法表
- 使用nginx搭建前端项目web服务器以及利用反向代理调试远程后台接口
- 【荐】万能清除浮动样式
- 欢迎使用CSDN-markdown编辑器
- 如何编写可维护的面向对象JavaScript代码
- hadoop2.7.1java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodema
- android toolbar收缩的实现{局限性非常强}
- HDU5405 Sometimes Naive
- EventBus
- 确定公差,第一个数,最后一个数,即可求得总和
- 。。。
- Ajax传地址URL编码格式
- SingleLinkNode with Pointers-to-Pointers
- python安装第三方的包 工具对比
- 新的blog搭好了,对这里的一些文章进行了迁移,欢迎来访
- Android之Pull解析XML文件
- DSP BIOS任务通信和同步(pend/post举例)
- 【经验】在CSS中定义超链接样式a:link、a:visited、a:hover、a:active的顺序
- 浅谈跳槽