【发布时间】:2013-06-01 21:49:46
【问题描述】:
我正在解决一个problem,其中输入流包含一组整数 Ai (0 ≤ Ai ≤ 10^(18))。这些数字由任意数量的空格和换行符分隔。输入流的大小不超过 256 KB。
我的代码如下:-
#include<math.h>
#include<iostream>
using namespace std;
int main(void)
{
long int index,i;
cin>>index;
int *arr=new int[index];
if(sizeof(*arr)<262144) // 262144 = 256*1024 bytes which I think might be the size of the array
{
for(i=0;i<index;i++)
cin>>*(arr+i);
for(i=index-1;i>=0;i--)
cout<<sqrt(*(arr+i))<<endl;
}
else
return -1;
return 0;
}
生成的输出的问题是我要求用户输入必须输入到数组中的元素数量。但程序不希望这样。它希望我们通过流输入所需的数字,但我无法这样做。另外,我对“输入流的大小”感到困惑。这个“输入流的大小”是什么意思?你能在这取悦我吗?
【问题讨论】:
-
您不需要数组来执行此操作。只需阅读和处理。
-
我猜它假设你使用stack 数据结构。
-
但是我不需要知道流中有多少和哪些数字吗?如果是,那么我应该如何使用标准 I/O 流来做到这一点?
-
我认为“输入流的整体大小”是一个红鲱鱼。与问题无关
-
“输入流的大小”没有任何意义。输入流可以无限长。它与您的问题无关。
标签: c++