about summary refs log tree commit diff
path: root/10/CSP-KT2/negpairs.c
diff options
context:
space:
mode:
authorRaphael McSinyx <vn.mcsinyx@gmail.com>2016-10-08 09:56:43 +0700
committerRaphael McSinyx <vn.mcsinyx@gmail.com>2016-10-08 09:56:43 +0700
commit2a7bc10f6c011d19fb3b0e73068f7e1a9c30ace0 (patch)
tree95190a32ec1c7098494849eea5a5ba6b53289585 /10/CSP-KT2/negpairs.c
parent207cc2ae9893b0cdecd20119b9ede37f73cd4a1e (diff)
downloadcp-2a7bc10f6c011d19fb3b0e73068f7e1a9c30ace0.tar.gz
Initial commit
Diffstat (limited to '10/CSP-KT2/negpairs.c')
-rw-r--r--10/CSP-KT2/negpairs.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/10/CSP-KT2/negpairs.c b/10/CSP-KT2/negpairs.c
new file mode 100644
index 0000000..577fdf8
--- /dev/null
+++ b/10/CSP-KT2/negpairs.c
@@ -0,0 +1,24 @@
+#include <stdio.h>
+
+int main()
+{
+	long n, i;
+	long unsigned_a[201] = {};
+	long *a = &unsigned_a[100];
+	char a0;
+	long long v;
+
+	scanf("%ld", &n);
+	for (i = 0; i < n; i++) {
+		scanf("%hhd", &a0);
+		a[a0]++;
+	}
+
+	v = a[0] * (a[0] - 1) / 2;
+	for (i = 1; i <= 100; i++)
+		v += a[i] * a[-i];
+
+	printf("%lld\n", v);
+
+	return 0;
+}