Problem A: 数组类(I)

Problem A: 数组类(I)

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 3295  Solved: 2418
[Submit][Status][Web Board]

Description

封装一个整型数组类,用于存储整数和处理的相关功能,支持以下操作:

1. Array::Array()无参构造方法:创建一个空数组对象。

2. Array::size()方法:返回Array对象中元素个数。

3. Array::get(int n)方法:按格式从输入读取n元素。

4. 下标运算符:返回下标所指的元素。

-----------------------------------------------------------------------------

你设计一个数组类Array,使得main()函数能够正确运行。

函数调用格式见append.cc。

append.cc中已给出main()函数

Input

输入的第一个整数n,表示有n组测试数据。

后面的每行以一个整数k开头,表示后面有k个整数。

Output

把输入的数组,输出出来。每行数据对应一个输出。格式见sample。

Sample Input

4
2 10 20
1 0
0
3 1 2 3

  

Sample Output

10 20
0

1 2 3

  

HINT

Append Code

append.cc,

int main()
{
    int cases;
    Array arr;
    cin >> cases;
    for(int ca = 1; ca <= cases; ca++)
    {
        int len;
        cin >> len;
        arr.get(len);
        for(int i = 0; i < arr.size(); i++)
            if(i + 1 == arr.size())
                cout << arr[i];
            else
                cout << arr[i] << " ";
        cout << endl;
    }
}

  

#include <iostream>
#include <vector>
using namespace std;
class Array
{
public :
    vector<int> num;
    int len;
    Array():len(0){}
    int size()
    {
        return len;
    }
    void get(int n)
    {
        len=n;
        num.resize(len);
        for(int i=0; i<n; i++)
        {
            int t; cin>>t;
            num[i]=t;
            //num.push_back(t);重置了,不能再向量尾部继续添加,否则就是在增加向量长度。
        }
    }
    int operator[](int n)
    {
        return num[n];
    }
};
int main()
{
    int cases;
    Array arr;
    cin >> cases;
    for(int ca = 1; ca <= cases; ca++)
    {
        int len;
        cin >> len;
        arr.get(len);
        for(int i = 0; i < arr.size(); i++)
            if(i + 1 == arr.size())
                cout << arr[i];
            else
                cout << arr[i] << " ";
        cout << endl;
    }
}

  

原文地址:https://www.cnblogs.com/Jie-Fei/p/9129364.html

时间: 2024-08-07 22:48:23

Problem A: 数组类(I)的相关文章

Problem B: 数组类(II)

Problem B: 数组类(II) Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 3606  Solved: 1760[Submit][Status][Web Board] Description 封装一个模板数组类,用于存储数组和处理的相关功能,支持以下操作: 1. Array::Array(int l)构造方法:创建一个长度为l的组对象. 2. Array::size()方法:返回Array对象中元素个数. 3. Array::put(int

实验6:Problem B: 数组类(II)

Description 封装一个模板数组类,用于存储数组和处理的相关功能,支持以下操作: 1. Array::Array(int l)构造方法:创建一个长度为l的组对象. 2. Array::size()方法:返回Array对象中元素个数. 3. Array::put(int n)方法:按从大到小的顺序输出前n大元素,若数组长度小于n则从大到小输出全部元素. 4. 下标运算符:返回下标所指的元素. -------------------------------------------------

Problem A: 数组类(II)

Description 封装一个模板数组类,用于存储数组和处理的相关功能,支持以下操作: 1. Array::Array(int l)构造方法:创建一个长度为l的组对象. 2. Array::size()方法:返回Array对象中元素个数. 3. Array::put(int n)方法:按从大到小的顺序输出前n大元素,若数组长度小于n则从大到小输出全部元素. 4. 下标运算符:返回下标所指的元素. -------------------------------------------------

实验11:Problem D: 分数类的模板数组类

在默认构造函数里面,分母的默认值不能为0!! Home Web Board ProblemSet Standing Status Statistics Problem D: 分数类的模板数组类 Problem D: 分数类的模板数组类 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 509  Solved: 350[Submit][Status][Web Board] Description 封装一个模板数组类Array,支持一下操作: 1. 构造函

Problem S: 分数类的模板数组类

Problem S: 分数类的模板数组类 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 2155  Solved: 1624[Submit][Status][Web Board] Description 封装一个模板数组类Array,支持一下操作: 1. 构造函数Array(int n),将数组初始化为n个存储空间: 2. 函数input(int n),读取最多n个元素,但不能超过数组存储空间的上限: 3. 重载下标运算符,返回数组的元素. 封装一

设计数组类扩展数组的功能

建立专门的数组类处理有关数组的操作 数组是几乎所支持的组织数据的方法.C和C++对数组类型提供了内置支持,使我们利用数组实现软件中需要的各种实用的功能.但是,这种支持仅限于用来读写单个元素的机制.C++不支持数组的抽象abstraction,也不支持对整个数组的操作.例如:把一个数组赋值给另外一个数组,对两个数组进行相等比较或者想知道数组的大小size,等等.对C++而言,数组是从C语言中继承来的,它反映了数据与对其进行操作的算法的分离,有浓厚的过程化程序设计的特征.数组并不是C++语言的一等公

4 C++基础4 类 const函数 转全局函数 返回*this 数组类。友元 函数 类 操作符重载

1,请问类中函数 const修饰的谁? [email protected]:~/c++$ cat main.cpp  #include <iostream> #include <stdlib.h> using namespace std; class A { public: //const的三种写法 //const void fun(int a,int b) //void const fun(int a,int b) //void fun(int a,int b) const vo

Arrays数组类使用介绍

Arrays:数组类,是包java.util下面的一个类,Collection接口也在这个包下面. 主要的方法: Arrays.asList(数组对象)  //此静态方法用于将Array转化为List类型对象.常常用于List类型对象的初始化中. Arrays.sort(array):升序排序: Arrays.banarySearch(array,2):查找2这个元素所在数组中的位置,用二分查找: Arrays.copyOf(float[] original, int newLength):复制

hdu 5008(2014 ACM/ICPC Asia Regional Xi&#39;an Online ) Boring String Problem(后缀数组&amp;二分)

Boring String Problem Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 219    Accepted Submission(s): 45 Problem Description In this problem, you are given a string s and q queries. For each que