关闭同步流后程序里的scanf我忘了改成cin,编译后竟然没有问题!但是scanf在前面关闭同步流之后再用就WA,所以关闭同步流之后再用scanf它是怎么存储数据的?源代码(WA):
#include<bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);//这里关闭了同步流
cin.tie(0);
cout.tie(0);
int n,c,z=0,sum=0;
cin>>n>>c;
int sz[n+1];
for(int i=1;i<=n;i++){
scanf("%d ",&sz[i]);//注意,这里是scanf
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
z=sz[j]-sz[i];
if(z==c)
sum++;
}
}
cout<<sum;
return 0;
}
AC:
#include<bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n,c,z=0,sum=0;
cin>>n>>c;
int sz[n+1];
for(int i=1;i<=n;i++){
cin>>sz[i];//scanf改cin
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
z=sz[j]-sz[i];
if(z==c)
sum++;
}
}
cout<<sum;
return 0;
}