about summary refs log tree commit diff
path: root/ntu/pali.c
blob: 05f24dded16afd3c2296dddfb0d3ba082e74b080 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#include <math.h>

char get(long m, char idx)
{
	long n10 = (long) pow(10, idx + 1);
	m %= n10;
	if (idx)
		m /= (n10 / 10);
	return m;
}

int main()
{
	short n, i;
	long a[1000];
	scanf("%hd", &n);
	for (i = 0; i < n; i++)
		scanf("%ld", &a[i]);

	char j, len, boo;
	for (i = 0; i < n; i++) {
		boo = 1;
		len = (char) log10(a[i]);
		if (len)
			for (j = 0; j * 2 < len; j++) {
				if (get(a[i], j) != get(a[i], len - j)) {
					boo = 0;
					break;
				}
			}
		if (boo)
			printf("%ld ", a[i]);
	}

	printf("\n");
	return 0;
}