我最近发现了一个叫Codechef的网站,你可以在那里提交问题的解决方案。
对于一个问题,我分别用C语言和C++语言写了两个答案。这两个代码几乎相同,但是当运行用C语言编写的代码时,它只需要4.89秒,而用C++语言编写的代码却超时了(超过8秒)。这是怎么回事?时间都花在哪里了?
这个问题的输入包含两个正整数n和k(n,k<=107)。接下来的n行输入包含一个正整数ti, 不大于10^9。 输出一个整数,表示有多少个整数ti能被k整除。
这个问题的输入包含两个正整数n和k(n,k<=107)。接下来的n行输入包含一个正整数ti, 不大于10^9。 输出一个整数,表示有多少个整数ti能被k整除。
Example
Input:
7 3
1
51
966369
7
9
999996
11
Output:
4
我的C代码:
#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;
}
我的C++代码:
#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;
}