// // File: unique.cc // Author: cteam18 // // Created on November 13, 2011, 9:12 AM // #include #include #include #include #include using namespace std; typedef pair pii; typedef vector::iterator itvp; #define all(c) (c).begin(), (c).end() int main(int argc, char** argv) { long m, q; vector keys, from, types; vector keyssort; scanf("%d%d", &m, &q); while(m || q){ int beg = -1; int type; keys = from = types = vector(m); keyssort = vector(m); for(int i = 0; i < m; ++i){ scanf("%d", &(keys[i])); keyssort[i] = pii(keys[i], i); } sort(all(keyssort)); for(int i = 0; i < m; ++i){ itvp iter = lower_bound(all(keyssort), pii(keys[i], i)); if(iter != keyssort.begin() && (--iter)->first == keys[i] && iter->second > beg){ beg = iter->second; type = keys[i]; } from[i] = beg; types[i] = type; } for(int i = 0; i < q; ++i){ int q1, q2; scanf("%d%d", &q1, &q2); --q1; --q2; if(from[q2] >= q1){ printf("%d\n", types[q2]); } else { printf("OK\n"); } } scanf("%d%d", &m, &q); printf("\n"); } return (0); }