珠心算测验 萌新求助呜呜呜
查看原帖
珠心算测验 萌新求助呜呜呜
306154
da表哥楼主2020/8/5 20:35

因为是萌新,一开始就打算用暴力三个循环来写,然后看评论区有大佬说1+3和2+4也算同一种,就没办法,只能单独判断了,结果写完只有一个点超时了,怎么也想不明白为啥别人三个循环能过,我两个就超时QAQ

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,t=0,a[105],b[10005]={0},ans=0;
	cin >> n;
	for(int i=0;i<n;i++)
		cin >> a[i];
	for(int i=0;i<n-1;i++)   //循环两个数相加
	{
		for(int j=i+1;j<n;j++)
		{
			t=a[i]+a[j];
			b[t]++;     //把得出来的和存起来
			t=0;
		}
	}
	for(int i=0;i<n;i++)
	{        //在给的数组里面找刚刚得到过的,大于1次就算一次
		if(b[a[i]]>=1)
			ans++;
	}
	cout << ans << endl;
	return 0;
}

第二个测试点过不了,查看了一下,给的是100个数据,超时了= =

2020/8/5 20:35
加载中...