cin 和scanf,scanf比cin快很多

时间:2022-09-15 10:05:54
//#include <iostream>
#include <stdio.h>
//#include <fstream>
//using namespace std;
#define MAXN 501
#define INF 0x3fffff
/*Accepted 676K 750MS*/
/*528K 157MS*/
//var
int n;
int num;
int a[MAXN][MAXN];
//fstream fin;
//function
void prim(int u);
int main()
{
// fin.open("2485.txt",ios::in);
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
scanf("%d",&a[i][j]); num=0;
//用prim算法计算最小生成树
prim(0);
printf("%d\n",num);
}
//system("pause");
return 0;
} void prim(int u)
{
int *lowset=new int[n]; //表示已经被选择的点到n个点的距离
bool *s=new bool[n]; //初始化lowset和s
for(int i=0;i<n;i++)
{
s[i]=false;
if(u!=i&&a[u][i])
lowset[i]=a[u][i];
else
lowset[i]=INF;
} s[u]=true;
int p;
for(int i=0;i<n-1;i++)
{
int min=INF;
for(int j=0;j<n;j++)
{
if(min>lowset[j]&&!s[j])
{
min=lowset[j];
p=j;
}
}
if(min>num)
num=min;
s[p]=true;
//更新lowset
for(int j=0;j<n;j++)
{
if(a[p][j]<lowset[j]&&!s[j])
lowset[j]=a[p][j];
}
} delete []lowset;
delete []s;
}

同一个程序,用scanf输入只要157ms而用cin输入要700多ms。所以对于多数据输入时,用scanf

cin 和scanf,scanf比cin快很多的更多相关文章

  1. 从while(cin&gt&semi;&gt&semi;a)开始探讨cin

    1. 首先cin>>a返回的是左操作数,也就是返回cin. cin的条件状态中: cin.eof()    判断流是否到达文件的结束符 cin.fail()    判断IO操作是否失败 在 ...

  2. select &ast; 比select column快很多奇怪案例分析

    遇到MYSQL傻傻的地方,下面给个案例,大家感受下: 注意以下两个sql只有select *和select g.id区别. SQL1:SELECT g.idFROM table1 gINNER JOI ...

  3. QMap QHash的选择(QString这种复杂的比较,哈希算法比map快很多)

    QMap QHash有近乎相同的功能.很多资料里面介绍过他们之间的区别了.但是都没有说明在使用中如何选择他们. 实际上他们除了存储顺序的差别外,只有key操作的区别. 哈希算法是将包含较多信息的“ke ...

  4. php实现合并两个排序的链表(很多情况下新建数组装东西比连东西逻辑快很多)(&dollar;cur&equals;&dollar;cur-&gt&semi;next&semi;的理解)

    php实现合并两个排序的链表(很多情况下新建数组装东西比连东西逻辑快很多)($cur=$cur->next;的理解) 一.总结 $cur=$cur->next;这句话需要好好理解 指$cu ...

  5. mlocate比find快很多的查找命令

    mlocate比find快很多的查找命令 使用linux操作系统的人,一般都用过文件查找命令find,在文件数量非常庞大的时候,比如在高通的android工程项目中,目录大小有十几个G,文件数量非常多 ...

  6. cin&comma;cout&comma;printf&comma;scanf效率对比

    From:http://www.cnblogs.com/killerlegend/p/3918452.html Author:KillerLegend Date:2014.8.17 杭电OJ之3233 ...

  7. cin&sol;cout与scanf&sol;printf的比较

    转自http://www.cnblogs.com/penelope/articles/2426577.html  cin .cout   基本说明: cin是标准输入流对象,代表标准输入设备(键盘), ...

  8. scanf函数和cin的区别、类的数组、C&plus;&plus;排序函数

    给定n个字符串,将这n个字符串按照字典序进行排列,此处用排列函数是C++的库函数sort,产生如下两个疑问,望大佬解答 #include <iostream> #include <a ...

  9. jvm minor gc 为什么比 full gc 快很多

    1.minor gc 也需要STW,只不过正常情况下 minor gc  STW时间非常短,所以很多人误以为没有STW. 这里的正常情况是,Eden 区产生的新对象大部分被回收了,不需要拷贝. 2.M ...

随机推荐

  1. LUA实现单词替换功能

    背景描述 编程或者文档处理过程, 经常遇到需要将一个单词修改为另外一个单词的情况, 例如 命名为 shall 修改 为 should. 使用工具实现, 则比较方便,不容易出错, 解放双手. 需求规格 ...

  2. PHP解析JSON和XML方法

    一.JSON $r = json_decode("json数据"); $result = $r->result; //解析后的数据,以数组形式保存到r里面了,需要通过-&gt ...

  3. JSF教程(10)——生命周期之Update Model Values Phase

    在整个JSF生命周期中经历了取值.验证的阶段终于从request中拿到合理的值,以下就是在本阶段给相应的服务端对象(ManageBean)赋值了.JSF实现仅仅是去更新和input组件中value属性 ...

  4. Centos安装后,没有ifconfig工具

    yum install net-tools yum不能用时,就下载rpm来安装 hostname -f, --fqdn, --long Display the FQDN (Fully Qualifie ...

  5. git push的用法

    git push <远程仓库名> <本地分支名>:<远程分支名>

  6. linux tpm 测试完整记录,亲测有效。

    没有tpm芯片,采用模拟器的方式来测试. 实验环境:内核版本 3.10.0-327 软件包准备: 内网,没有仓库,自己网上下载: 1. cmake-3.9.6-Linux-x86_64.tar.gz ...

  7. Confluence 6 log4j 日志级别

    日志级别 DEBUG - 被设计为用来获得最多的信息和事件,在对应用程序进行调试的时候,这个日志级别通常能够提供最多的有效信息(查看应用程序怎么了) INFO - 有关系统正常运行-计划任务运行,服务 ...

  8. 利用git 进行多人协作开发

    现在,大部分项目都是用 git 来管理代码的,但当项目变大.多人协作时,git 的使用就变得复杂了,这时就需要在 git 使用的流程上来思考如何更优的使用 git. 对于大部分 web 项目而言,并不 ...

  9. 【Java】 剑指offer&lpar;22&rpar; 链表中倒数第k个结点

    正文 本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 输入一个链表,输出该链表中倒数第k个结点.为了符合大多数人的 ...

  10. C&sol;C&plus;&plus;笔试题(编程题)

    面试过程中遇到的编程题整理,于此备录.分享,共勉.(持续更新中......欢迎补充) (1)用户输入M, N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出.写出C程序. 程序代码如下: ...