입력 스트림에 정수 Ai (0 ≤ Ai ≤ 10^(18))가 들어있는 problem을 풀고 있습니다. 숫자는 공백과 줄 바꿈으로 구분됩니다. 입력 스트림의 크기는 256KB를 초과하지 않습니다. 다음C++ - 입력 스트림의 크기
내 코드는 : -
#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;
}
생성 된 출력의 문제점은 I 배열에 입력해야하는 요소의 수를 입력하도록 사용자에게 요구한다는 것이다. 그러나 프로그램은 그것을 원하지 않습니다. 스트림을 통해 필요한 숫자를 입력하기를 원하지만 그렇게 할 수 없습니다. 또한 "입력 스트림의 크기"에 혼란 스럽습니다.이 "입력 스트림의 크기"는 무엇을 의미합니까? 이걸 내게 기쁘게 해 줄 수 있니?
이렇게하려면 배열이 필요하지 않습니다. 그냥 읽고 처리하십시오. – chris
[stack] (http://en.wikipedia.org/wiki/Stack_ (abstract_data_type)) 데이터 구조를 사용한다고 가정합니다. – Lol4t0
하지만 스트림에 얼마나 많은 숫자가 있는지 알아야합니까? 그렇다면 표준 I/O 스트림을 사용하여 어떻게해야합니까? – kusur