arr*_*y36 8 c c++ executiontimeout
我最近发现这个名为codechef的网站,您可以在其中提交问题解决方案.我已经为一个问题提交了两个答案,一个在C中,另一个在C++中.两个代码几乎相同.但是当我在C中提交的代码在4.89s中执行时,我在C++中提交的代码超时(超过8秒).这怎么可能?时间到了哪里?
输入
输入以两个正整数nk(n,k <= 107)开始.接下来的n行输入包含一个正整数ti,每个整数不大于10 ^ 9.
产量
写一个整数来输出,表示有多少整数ti可以被k整除.
Example
Input:
7 3
1
51
966369
7
9
999996
11
Output:
4
Run Code Online (Sandbox Code Playgroud)
#include<stdio.h>
int main() {
int n,k,t;
scanf("%d %d",&n,&k);
int i,num=0;
for(i=0;i<n;i++) {
scanf("%d",&t);
if(t%k==0) num++;
}
printf("%d",num);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
#include<iostream>
using namespace std;
int main() {
int n, k, t,num=0;
cin>>n>>k;
for(int i=0;i<n;i++) {
cin>>t;
if(t%k==0) num++;
}
cout<<num;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
con*_*ref 28
尽管代码执行相同的操作,但代码并不完全相同
c ++版本默认使用比scanf等慢的cin和stream.
默认情况下,cin/cout浪费时间与C库的stdio缓冲区同步,这样你就可以自由地将对scanf/printf的调用与cin/cout上的操作混合.你可以关闭它std::ios_base::sync_with_stdio(false);
通过这样做,所花费的时间或多或少与我期望的相似
归档时间: |
|
查看次数: |
678 次 |
最近记录: |