传统题 1000ms 128MiB

三数之和

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

给定整数数组求解和为0的不重复三元组数量,是经典的数组查找与去重问题。

题目描述

给你一个整数数组 aa,判断是否存在三元组 a[i],a[j],a[k]a[i], a[j], a[k] 满足 iji \neq jiki \neq kjkj \neq k,同时满足 a[i]+a[j]+a[k]=0a[i] + a[j] + a[k] = 0。 请你找出所有和为 00不重复的三元组的个数。 注意:答案中不可以包含重复的三元组(两个三元组如果排序后相同则认为重复)。

输入格式

  1. 第一行输入整数 nn,表示数组的长度,保证 3n30003 \le n \le 3000
  2. 第二行输入 nn 个整数 a[i]a[i],表示数组的元素,每个数字之间以空格为间隔。

输出格式

输出符合条件的不重复三元组的组数。

样例输入1

6
-1 0 1 2 -1 -4

样例输出1

2

数据规模

  • 数组长度:3n30003 \le n \le 3000
  • 数组元素取值范围:1000a[i]1000-1000 \le a[i] \le 1000

小迪老师-set、map

未认领
状态
已结束
题目
11
开始时间
2026-1-25 0:00
截止时间
2026-2-8 23:59
可延期
24 小时