ALGORITHM/BAEKJOON [BAEKJOON] 10942 팰린드롬? l_j_yeon 2017. 10. 1. 18:01 #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; vectormap(2001); vector>DP(2001, vector(2001, -1)); int is_palindrom(int start, int end) { int &ret = DP[start][end]; if (ret != -1) return ret; if (start > end) return 1; if (is_palindrom(start + 1, end - 1)==1) { if (map[start] == map[end]) return ret = 1; else return ret = 0; } else return ret = 0; } int main() { int n, q_count; scanf("%d", &n); for (int index = 1; index <= n; index++) scanf("%d", &map[index]); scanf("%d", &q_count); int start_index, end_index; for (int j = 0; j < q_count; j++) { scanf("%d %d", &start_index, &end_index); printf("%d\n", is_palindrom(start_index, end_index)); } return 0; } 저작자표시 비영리 변경금지 (새창열림)