关于怎么计算出程序所需的时间
2015-04-07 18:10
225 查看
在程序设计竞赛时,常常需要对算法的复杂度进行估计,但是有时候,估计的并不准确,那么怎么办呢
当然就是测试一组实际足够复杂的数据看看程序大概要花多少时间嘛
这个时候就需要程序有个计时功能了
这里关键需要用到 time.h 里的计时函数 clock(),注意这个函数是返回从运行开始到结束的所需时间,所以待会你会看到我们需要2个值,有时候自己测试的时候,那个输入的时间我们是需要减去的==
贴代码了
#include <bits/stdc++.h>
using namespace std;
inline double TIME_BEGIN()
{
return (double)clock()/CLOCKS_PER_SEC;
}
inline void TIME_USED(double time)
{
printf("Time used = %.3f\n",(double)clock()/CLOCKS_PER_SEC-time);
}
int main()
{
long long a,b;
while(~scanf("%lld%lld",&a,&b)){
double time=TIME_BEGIN();//注意了
long long sum=0;
for (long long i=a;i<=b;i++){
sum=(sum+i)%10000007;
}
TIME_USED(time);//注意这儿
}
return 0;
}
注意,要是 (double)clock()/CLOCKS_PER_SEC 才是返回一秒为单位的时间
当然就是测试一组实际足够复杂的数据看看程序大概要花多少时间嘛
这个时候就需要程序有个计时功能了
这里关键需要用到 time.h 里的计时函数 clock(),注意这个函数是返回从运行开始到结束的所需时间,所以待会你会看到我们需要2个值,有时候自己测试的时候,那个输入的时间我们是需要减去的==
贴代码了
#include <bits/stdc++.h>
using namespace std;
inline double TIME_BEGIN()
{
return (double)clock()/CLOCKS_PER_SEC;
}
inline void TIME_USED(double time)
{
printf("Time used = %.3f\n",(double)clock()/CLOCKS_PER_SEC-time);
}
int main()
{
long long a,b;
while(~scanf("%lld%lld",&a,&b)){
double time=TIME_BEGIN();//注意了
long long sum=0;
for (long long i=a;i<=b;i++){
sum=(sum+i)%10000007;
}
TIME_USED(time);//注意这儿
}
return 0;
}
注意,要是 (double)clock()/CLOCKS_PER_SEC 才是返回一秒为单位的时间
相关文章推荐
- 关于计算Java程序运行时间
- 关于计算程序运行时间的方法汇总
- 关于java读文件计算一个方法执行时间的程序的学习
- 关于计算java程序运行时间
- 关于计算Java程序运行时间
- 关于计算Java程序运行时间
- Java当中计算关于程序运行时间的函数
- 关于计算Java程序运行时间 及Java代码--JUnit
- c++计算程序运行时间的函数,怎么才能精确到微妙级呢?
- 程序计数器(计算运行该程序所需的时间)
- 关于计算程序运行时间的方法汇总
- 关于计算java程序运行时间
- 关于计算Java程序运行时间
- Stopwatch类计算程序运行所需时间
- 计算程序的运行时间(C++)
- 一个计算程序执行时间的批处理
- 想在每个文件头部加一些关于该文件的信息,如作者,创建时间,用途等,大家一般是怎么操作的?
- Matlab中计算程序运行时间的代码
- 我写的一段关于检测时间合法性的程序
- VBscript(ASP)计算程序运行时间,精度到毫秒