Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- vector <pair<int, int>> ans;
- void rezolva (int st, int dr, int a, int b)
- {
- if (a<=st && dr<=b)
- {
- ans.push_back({st, dr});
- return;
- }
- int mij = st+dr>>1;
- if (a<=mij) rezolva(st, mij, a, b);
- if (mij<b) rezolva(mij+1, dr, a, b);
- }
- int main()
- {
- ifstream fin ("di.in");
- ofstream fout ("di.out");
- int n, m;
- fin >> n >> m;
- while (m--)
- {
- ans.clear();
- int x, y;
- fin >> x >> y;
- rezolva(1, n, x, y);
- fout << ans.size() << " ";
- sort(ans.begin(), ans.end());
- fout << ans[0].first << " ";
- for (auto x:ans)
- fout << x.second << " ";
- fout << '\n';
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment