Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<fstream>
- #include<set>
- #include<deque>
- using namespace std;
- const int MAXN=80000;
- deque <int> primi;
- deque <int> ultimi;
- multiset<int> minimo;
- multiset <int> massimo;
- multiset<int>::iterator it;
- struct valori
- {
- int mini;
- int mass;
- }tutti[MAXN];
- int main()
- {
- ifstream in("input.txt");
- ofstream out("output.txt");
- int n;
- in>>n;
- int totali=2*n;
- int tmp;
- for(int i=0;i<n;i++)
- {
- in>>tmp;
- primi.push_back(tmp);
- minimo.insert(tmp);
- }
- for(int i=0;i<n;i++)
- {
- in>>tmp;
- ultimi.push_back(tmp);
- massimo.insert(tmp);
- }
- for(int i=0;i<totali;i++)
- {
- tutti[i].mini=*minimo.begin();
- tutti[i].mass=*massimo.rbegin();
- int valore=primi.back();
- primi.pop_back();
- minimo.erase(minimo.find(valore));
- ultimi.push_front(valore);
- massimo.insert(valore);
- int valore1=ultimi.back();
- ultimi.pop_back();
- massimo.erase(massimo.find(valore1));
- primi.push_front(valore1);
- minimo.insert(valore1);
- }
- int m;
- in>>m;
- int indice;
- int posizione;
- for(int i=0;i<m;i++)
- {
- in>>indice;
- posizione+=indice;
- posizione=posizione%totali;
- out<<tutti[posizione].mini<<" "<<tutti[posizione].mass<<endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment