为什么我的会wa一个点啊?求好心的大佬帮忙看看

#include<bits/stdc++.h>
using namespace std;
long long n,m,a[50010],x;
bool b[4002000];
int main()
{
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
    cin>>n;
	for(int i=1;i<=n;i++)cin>>a[i];
	cin>>m;
	for(int i=1;i<=m;i++)
	{
		cin>>x;
		b[x]=true;
	}
	for(int i=1;i<=n;i++)
	{
		if(b[10000-a[i]]==true)
		{
			cout<<"YES";
			return 0;
		}
	}
	cout<<"NO";
//	fclose(stdin);
//	fclose(stdout);
	return 0;
}

2 条评论

  • @ 2022-12-13 17:37:30

    map 会TLE

    • @ 2022-12-17 10:52:16

      然而由于 integer\text{integer}3276832768-32768 \sim 32768,所以珂以 AC。

      
      #include "bits/stdc++.h"
      using namespace std;
      
      map<int, int> mp1;map<int, int> mp2;
      
      int main() {
      int n;
      int fuckccf;
      scanf ("%d", &n);
      for (int i = 1; i <= n; ++i) {
      scanf ("%d", &fuckccf);
      mp1[fuckccf] = 1;
      }
      scanf ("%d", &n);
      for (int i = 1; i <= n; ++i) {
      scanf ("%d", &fuckccf);
      mp2[fuckccf] = 1;
      }
      for (int i = -191981; i <= 191981; ++i) {
      if (mp1[i] == 1 && mp2[10000 - i] == 1) {
      return puts("YES"), 0;
      }
      }
      puts("NO");
      }
      
  • @ 2022-12-11 13:54:39

    有没有一种可能,负下标

    • 1

    信息

    ID
    245
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    (无)
    递交数
    529
    已通过
    92
    上传者