Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class Array {
- int len;
- int* data;
- public:
- Array();
- ~Array();
- int length() { return len; }
- void reverse();
- friend ostream& operator << (ostream&, const Array&);
- friend istream& operator >> (istream&, Array&);
- int& operator[](int);
- };
- Array::Array(){
- len=0; data=0;
- }
- Array::~Array(){
- if(data!=0){
- delete[] data;
- data=0;
- }
- }
- void Array::reverse(){
- for (int i = 0, j = len - 1; i < j; ++i, --j) {
- swap(data[i], data[j]);
- }
- }
- istream& operator>>(istream& inp, Array& a) {
- inp>>a.len;
- a.data=new int[a.len];
- for (int i = 0; i < a.len; ++i) inp >> a.data[i];
- return inp;
- }
- ostream& operator<<(ostream& out, const Array& a) {
- out<<a.len<<endl;
- for (int i = 0; i < a.len; ++i){
- out<< a.data[i] << ' ';
- }
- return out;
- }
- int& operator[](int ind) {
- return data_[ind];
- }
- int main() {
- Array arr;
- cin >> arr;
- int k;
- cin >> k;
- for (int i = 0; i < k; i++) {
- int ind;
- cin >> ind;
- cout << arr[ind] << " ";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement