题解 P2835 【刻录光盘】
2024-10-02 03:33:33
P2835 刻录光盘
来一波FLOYD最短代码qwq
#include<cstdio>
using namespace std;
#define FOR(i) for (register int i=1;i<=n;i++)
int n,x,a[201][201],f[201];
int main() {
while(~scanf("%d",&n)) {
FOR(i) while(scanf("%d",&x),x) a[i][x]=1;//建图,i可以将资料拷贝给x
FOR(k) FOR(i) FOR(j) a[i][j]|=(a[i][k] && a[k][j]);//FLOYD:i和j本身可以到达或可经k到达,则i与j相连
FOR(i) f[i]=i;
FOR(i) FOR(j) if (a[i][j]) f[j]=f[i];//类似并查集,寻找祖先(入度为0的点)
FOR(i) x+=(f[i]==i);//统计祖先数(即祖先不能从别的点拷贝到资料,所以每个祖先都需要一份)
printf("%d\n",x);
}
return 0;
}
最新文章
- WebServices复习
- UIViewController相关知识
- Python之扩展包安装
- JQuery+Ajax制作省市联动
- CodeCover初体验
- jquery怎么实现跨域的访问呢?与别人提供的接口连接
- android 开发:讯飞的离线命令识别器官方demo使用及demo下载
- TCP/IP 中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议
- Hadoop学习之自定义二次排序
- hadoop的webUI查看Live Nodes为1
- SQL Server 2008 R2 添加登录账户配置权限
- Day2:html和css
- JavaScript开发工具大全
- 配置国内 Docker Registry Mirror
- 一、python基本语法元素(温度转换)
- [转载] Oracle之内存结构(SGA、PGA)
- 【转】AngularJs HTTP请求响应拦截器
- java struts2入门学习--防止表单重复提交.OGNL语言学习
- Python中各种括号的区别、用途及使用方法
- UILabel 自适应高度,宽度
热门文章
- Python 2, Python 3, Stretch &; Buster
- 为什么说 2017 年你必须要学习 Go 了(多核,网络,多人协作,简单非OO,没有注解,Native,垃圾收集,代码优雅),附两个评论
- JAVA 拼接了一个sql 语句,但是最后运行报错——SQL 命令未正确结束
- .NET Core 微服务之Polly熔断策略
- SYN6109型 NTP网络子钟
- Android native进程间通信实例-binder篇之——简单的单工通信
- RestTemplate使用不当引发的问题分析
- Linux不重启识别新添加的磁盘
- Python中的字符编码
- 记一次SQL优化。