https://www.acmicpc.net/problem/10942
import sys
N = int(input())
l = [0] + list(map(int, input().split()))
dp = [[0 for i in range(N + 1)] for i in range(N + 1)]
for i in range(1, N + 1):
dp[i][i] = 1
for i in range(1, N):
if l[i] == l[i + 1]:
dp[i][i + 1] = 1
for a in range(2, N + 1):
for i in range(1, N - a + 1):
j = a + i
if l[i] == l[j] and dp[i + 1][j - 1] == 1:
dp[i][j] = 1
M = int(input())
for i in range(M):
S, E = map(int, sys.stdin.readline().split())
print(dp[S][E])
l: 숫자 리스트
dp[a][b]: S = a, E = b일 때 팰린드롬 여부 리스트
S, E가 팰린드롬이기 위해서는 l[S] == l[E]이고 dp[S + 1][E - 1]이 팰린드롬이여야 한다.