可以考虑优化一下,应该就能过了
by ajahjahah @ 2022-04-16 20:03:16
@[cker](/user/646985) 考虑将b[]数组的范围开大到```n*n+10```,而且将第18行的```b[q++]=a[i];```改为```b[++q]=a[i];```
by LJ07 @ 2022-04-16 20:08:52
```q++```等价于将q加1,然后返回q**原来**的值
```++q```等价于将q加1,然后返回q**改变后**的值
by LJ07 @ 2022-04-16 20:10:15
@[LJ07](/user/312306) 千言万语道不尽我的感谢,谢谢大佬!!!
by cker @ 2022-04-16 20:25:00
@[lao_ba](/user/357378) 谢谢大佬!
by cker @ 2022-04-16 20:25:25
@[LJ07](/user/312306) 不懂就问:b[]数组的数据量不是应该要比a[]数组小的吗?
by cker @ 2022-04-16 20:31:24
@[cker](/user/646985)
```cpp
for(int i=0;i<n;i++)
{
for(int j=0;j<i;j++)
for(int k=j+1;k<i;k++)
{
if(a[j]+a[k]==a[i])
{
b[q++]=a[i];
sum++;
}
if(a[j]+a[k]>a[i])
break;
}
}
```
上述代码段事实上```if```语句会执行将近 $n^3$ 次,也就意味着 $q$ 的大小将会远远大于 $n$ ,但一定小于 $n^3$。~~所以事实上b数组保险起见要开n的3次方大小~~
by LJ07 @ 2022-04-16 20:37:59
@[LJ07](/user/312306) 明白了,谢谢!!!
by cker @ 2022-04-16 20:40:33
最low的
最容易理解的:
#include<iostream>
#include<cstdio>
#include<bits/stdc++.h>
using namespace std;
int arr[1000],brr[1000],n,ans=0,temp;
int main(void)
{
//freopen("test.in","r",stdin);
//freopen("test.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&arr[i]);
}
for(int j=1;j<=n;j++)
{
for(int i=n-```
#include<iostream>
#include<cstdio>
#include<bits/stdc++.h>
using namespace std;
int arr[1000],brr[1000],n,ans=0,temp;
int main(void)
{
//freopen("test.in","r",stdin);
//freopen("test.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&arr[i]);
}
for(int j=1;j<=n;j++)
{
for(int i=n-1;i>=1;i--)
{
if(arr[i]>arr[i+1])
{
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
for(int c=3;c<=n;c++)
{
for(int a=1;a<c;a++)
{
for(int b=a+1;b<c;b++)
{
if(arr[c]==arr[a]+arr[b])
{
if(brr[c]==0)
{
ans++;
brr[c]=1;
}
}
}
}
}
printf("%d",ans);
return 0;
}
```
1;i>=1;i--)
{
if(arr[i]>arr[i+1])
{
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
for(int c=3;c<=n;c++)
{
for(int a=1;a<c;a++)
{
for(int b=a+1;b<c;b++)
{
if(arr[c]==arr[a]+arr[b])
{
if(brr[c]==0)
{
ans++;
brr[c]=1;
}
}
}
}
}
printf("%d",ans);
return 0;
}
by yycyqz @ 2022-05-28 20:09:14
@[cker](/user/646985)
我给你发了
by yycyqz @ 2022-05-28 20:10:06