【发布时间】:2017-12-12 15:36:33
【问题描述】:
K 的值因数组而异。如何做到这一点?
这是我必须实现的。它是hackerrank variable sizedarray 问题。 https://s3.amazonaws.com/hr-challenge-images/14507/1476906485-2c93045320-variable-length-arrays.png
我已阅读解决方案,但无法理解。 请解释这行代码:int** seq=new int* [n];
以下是获取 sn-p 的完整代码。
int main()
{
int n,q;
cin>>n>>q;
int** seq=new int* [n];
for(int i=0;i<n;i++)
{
int a;
cin>>a;
int* b=new int [a];
for(int j=0;j<a;j++)
{
int e;
cin>>e;
b[j]=e;
}
*(seq+i)=b;
}
for(int i=0;i<q;i++)
{
int r,s;
cin>>r>>s;
cout<<seq[r][s]<<endl;
}
}
我还阅读了有关使用向量创建可变大小数组的内容。我不明白。请解释一下。
【问题讨论】:
-
std::vector<std::vector<int>> seq(n); seq.push_back(std::vector<int>(a));
标签: c++ arrays pointers dynamic-arrays variable-length-array