不能看超多少,因为系统规定了多少时间,比如1000ms,那么只要你的程序到了1000ms还没运行玩,那么系统就会报超时,然后在服务器端结束进程。
OJ上运行的时间取决于你程序的效率和测试数据的大小,不需要你自己计算。你程序超时了,OJ是不会告诉你超了多少的。
#include
#include
using namespace std;
int main()
{
clock_t start,end;
start=clock();
for(int i=0;i<1000000000;i++);
end=clock();
printf("%d\n",end-start);//单位是毫秒
}
可以的。
对于C++的,可以用Clock函数。
对于Java的,可以通过获取时间来比较。不过自己的电脑测的不标准
一般来说可以估计出的,例如,你数据规模是1W以上 1000W一下,就要求算法复杂度最多为O(nlogn),在1000到100 可以扩大到O(n^2),100一下可以O(n^3),反正,不能超过 1WW左右。对于某些搜索很难估计的,一般在本机上抛一组比较大的数据就知道了。实在不行就上交了,就知道差多少。