about summary refs log tree commit diff
path: root/codechef/jain.c
diff options
context:
space:
mode:
authorNguyễn Gia Phong <vn.mcsinyx@gmail.com>2019-03-13 09:13:11 +0700
committerNguyễn Gia Phong <vn.mcsinyx@gmail.com>2019-03-13 09:13:11 +0700
commit86fd670f4d4ac634a8c9740ff9129b589afcec1a (patch)
tree3d6e01efae1b4425f0815a0b213aca6331194818 /codechef/jain.c
parent477c426b55d168764a34873561f78b3c34b1f013 (diff)
downloadcp-86fd670f4d4ac634a8c9740ff9129b589afcec1a.tar.gz
Guess my rank is gonna plummet again
Diffstat (limited to 'codechef/jain.c')
-rw-r--r--codechef/jain.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/codechef/jain.c b/codechef/jain.c
new file mode 100644
index 0000000..6471e93
--- /dev/null
+++ b/codechef/jain.c
@@ -0,0 +1,33 @@
+#include <stdio.h>
+
+const char VOWELS[] = {97, 101, 105, 111, 117};
+
+int main()
+{
+	char *c, s[1001];
+	long t, n, i, j, tmp;
+
+	scanf("%ld", &t);
+	while (t--) {
+		long vowels[32] = {};
+
+		scanf("%ld", &n);
+		for (i = 0; i < n; ++i) {
+			tmp = 0;
+			scanf("%s", &s);
+			for (c = s; *c; ++c) {
+				for (j = 0; VOWELS[j] ^ *c; ++j);
+				tmp |= 1 << j;
+			}
+			++vowels[tmp];
+		}
+
+		tmp = vowels[31] * (vowels[31] - 1) / 2;
+		for (i = 0; i < 31; ++i)
+			for (j = i + 1; j < 32; ++j)
+				tmp += ((i | j) == 31) * vowels[i] * vowels[j];
+		printf("%ld\n", tmp);
+	}
+
+	return 0;
+}