#include <iostream>
#include <string>
using namespace std;
//질문을 저장할 구조체
typedef struct Question
{
int begin;
int end;
Question():
begin(0), end(0)
{
}
}QUE;
//팬린드롬 함수
bool IsPanlin(int* str, Question q)
{
int strlen = q.end - q.begin + 1;
for (int j = q.begin- 1; j < (q.begin + strlen- 1)/2; ++j)
{
if (str[j] != str[strlen - 1 - j])
{
return false;
}
}
return true;
}
void main()
{
int m_size; // 1. 입력받을 수
int* m_str; // 2. 입력받을 배열
int m_sizeQ; // 3. 질문 사이즈
Question *v_Question; // 4. 질문
cout << "입력받을 수열의 크기를 입력해주세요 : " << endl;
cin >> m_size;
while ( m_size <1 || m_size > 2000)
{
cout << "크기는 1 <= N <= 2,000 사이로 입력해주세요. : " << endl;
cin >> m_size;
}
cout << " 수열을 입력해주세요 " << endl;
m_str = new int[m_size];
for (int i = 0; i < m_size; ++i)
{
cin >> m_str[i];
}
cout << "입력이 끝났습니다. " << endl << " 질문의 개수를 입력해주세요. " << endl;
cin >> m_sizeQ;
cout << " 질문을 입력해주세요 " << endl;
v_Question = new Question[m_sizeQ];
for (int i = 0; i < m_sizeQ ; ++i)
{
cin >> v_Question[i].begin;
cin >> v_Question[i].end;
cout << "end" << endl;
}
for (int i = 0; i < m_sizeQ; ++i)
{
cout << IsPanlin(m_str, v_Question[i]) << endl;
}
}