不明白10分的代码错在哪里,顺便附上根据题解修改的代码以便于您能更快指出代码错误所在
10pts代码
#include<bits/stdc++.h>
using namespace std;
int t[10005];
int n;
int a[105];
int main()
{
cin>>n;
int ans=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
sort(a+1,a+1+n);
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
for(int k=1;k<=n;k++)
{
if(a[i]+a[j]==a[k]&&a[i]!=a[j])
{
t[a[k]]=1;
}
}
}
}
for(int i=1;i<=10000;i++)
{
if(t[i]==1)
{
ans++;
}
}
cout<<ans;
return 0;
}
100pts代码
#include<bits/stdc++.h>
using namespace std;
int t[10005];
int n;
int a[105];
int main()
{
cin>>n;
int ans=0;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
sort(a+1,a+1+n);
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
for(int k=1;k<=n;k++)
{
if(a[i]+a[j]==a[k]&&a[i]!=a[j]&&t[a[k]]!=1)
{
t[a[k]]=1;
ans++;
}
}
}
}
cout<<ans;
return 0;
}