hdu--1232 继续通畅工程

wa了8次,超级崩溃,险些自闭,不过倒是学到了很多,先来一段代码:
#include<bits/stdc++.h>
using namespace std;
int p[]; //储存查并集
int n,m;
struct node{ //数组结构体,排序距离
int a,b;
int d;
}v[];
bool cmp(node x,node y)
{
return x.d<y.d;
}
int find(int x)
{
int re=x;
while(p[re]!=re)
{
re=p[re];
}
return re;
}
void join(int x,int y)
{
int dx=find(x);
int dy=find(y);
if(dx!=dy)
p[dx]=dy;
}
int main()
{
ios::sync_with_stdio(false);
while(cin>>n && n) //N(N-1)/2条路,n个村庄,n!=0
{
m=n*(n-)/;
for(int i=;i<=n;i++) //初始化p
p[i]=i;
for(int i=;i<m;i++) //N(N-1)/2组输入
scanf("%d%d%d",&v[i].a,&v[i].b,&v[i].d); //输入
sort(v,v+m,cmp); //排序距离,从小到大
int sum=;
for(int i=;i<m;i++)
{
if(find(v[i].a)!=find(v[i].b)) //if此时最小距离代表的两个村庄间不连通
{
join(v[i].a,v[i].b); //连通这两个村庄
sum+=v[i].d; //总距离+ 此时最小距离
}
}
printf("%d\n",sum);
}
return ;
}
首先不用管最后hint,这道题就用cin,cout就可以过
其次是这个加速c++输入的语句,用前1300ms,用后300ms,妈妈再也不用担心我的没法飙车了
ios::sync_with_stdio(false);
加速,加速!(~耶~~逮虾户~~)
再然后,就是这个函数最好不要和scanf连用,否则会疯狂的wa wa(比如上述代码>_<)。
最后一点就是这个并查集,最小生成树的模板要记住。
以上。
———2019/8/5 13:04:47;
——再加一点,对于ios::sync_with_stdio(false);
在NOIP的评测机上这样子会爆0
因此,noip比赛中坚决不要写std::ios::sync_with_stdio(false)
爆0的原因如下
noip明确要求使用freopen,而freopen是stdio库中的,既然我们已经取消了iostream和stdio的同步,这样会造成文件指针混乱,进而导致RE1111
最后详情-Here.
hdu--1232 继续通畅工程的更多相关文章
- hdu 1879 继续通畅工程(最小生成树)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1879 /************************************************* ...
- HDU 1232:畅通工程(并查集模板)
畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- HDU 1232(畅通工程)题解
以防万一,题目原文和链接均附在文末.那么先是题目分析: [一句话题意] 给定一具有N个节点的图和其边集,求其集合数量. [题目分析] 并查集经典题...其实就是创建好并查集就行了.. [算法流程] 于 ...
- 【并查集】模板 + 【HDU 1213、HDU 1232、POJ 2236、POJ 1703】例题详解
不想看模板,想直接看题目的请戳下面目录: 目录: HDU 1213 How Many Tables[传送门] HDU 1232 畅通工程 [传送门] POJ 2236 Wireless Network ...
- 简单并查集 -- HDU 1232 UVALA 3644 HDU 1856
并查集模板: #include<iostream> using namespace std; ],x,y; ]; //初始化 x 集合 void init(int n) { ; i< ...
- hdu 1879 继续畅通工程
/************************************************************************/ /* hdu 1879 继续畅通工程 Time L ...
- hdu 1232
以前写的.....拿出来看看.... 并查集模板: #include <iostream> #include <string> using namespace std; int ...
- HDU.1233 还是畅通工程(Prim)
HDU.1233 还是畅通工程(Prim) 题意分析 首先给出n,代表村庄的个数 然后出n*(n-1)/2个信息,每个信息包括村庄的起点,终点,距离, 要求求出最小生成树的权值之和. 注意村庄的编号从 ...
- HDU1213通畅工程-并查集求解
并查集的经典题目. 并查集.经典题目是HDU1232通畅工程. 题目描述: 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标 ...
- HDU 1232 畅通工程(模板——并查集)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1232 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出 ...
随机推荐
- SSH dao层异常 org.hibernate.HibernateException: No Session found for current thread
解决方法: 在 接口方法中添加 事务注解 即可. public interface IBase<PK extends Serializable, T> { @Transactional v ...
- 命令行中生成 md5、sha1、sha256 校验和
在测试过程中有时候需要对某个文件Hash值进行校验,如接口返回一个文件下载地址及hash值,那么除了对比平台端展示和接口下发是否一至,还有一个办法就是命令行使用相关命令 1.Window 注:我是在g ...
- C语言中怎样定义能够保存16进制整数的变量
可以通过int 或long int存储,16进制整数说到底还是整数,16进制只是一种记数方式.例如,int x=0x16;十六进制(hexadecimal)只是计算机中数据的一种表示方法,规则是“逢十 ...
- CF463E Caisa and Tree
要是你们能和我一样看错题目意思误认为是要求互质的就舒服了. 考虑修改很少,所以修改完之后可以暴力遍历树. 那么现在问题转换成了如何求一个点的答案,直接把所有质因子存下来然后用\(set\)维护即可. ...
- mysql PS1个性化
method ) $ export MYSQL_PS1="\u@\h [\d]> " method ) mysql> prompt \u@\h [\d]> met ...
- 深入理解JVM虚拟机3:垃圾回收器详解
JVM GC基本原理与GC算法 Java的内存分配与回收全部由JVM垃圾回收进程自动完成.与C语言不同,Java开发者不需要自己编写代码实现垃圾回收.这是Java深受大家欢迎的众多特性之一,能够帮助程 ...
- What is the use of c# “Yield” keyword ?
What is the use of c# “Yield” keyword ? “Yield keyword helps us to do custom stateful iteration over ...
- 服务挂后Dump日志
JAVA_HOME=/usr/java OUTPUT_HOME=~/output DEPLOY_HOME=`dirname $0` HOST_NAME=`hostname` DUMP_PIDS=`ps ...
- Windows安装Centos7双系统后Windows启动项消失
原文: https://www.cnblogs.com/xinglichao/p/9999049.html https://blog.csdn.net/yingzinanfei/article/det ...
- 3dmax联机分布式渲染方法技巧详解
3dmax联机分布式渲染方法技巧详解 \测试环境:win7系统 3DMAX2009 Vray2.0 .首先要保证你的两台电脑能在局域网里互相访问如图: 其他电脑上也一样都能打开对方的电脑! 步! ...