int main()
{
long long int first=0,second=1,T,N; //here T is Number of Cases
cin>>T;
long long int fab=first+second;
long long int sum[T];
for(long long int i=0;i<T;i++)
{
cin>>N;
while(fab<N)
{
first=second;
second=fab;
if(fab%2==0)
{
sum[i]+=fab;
}
fab=first+second;
}
}
for(int i=0;i<T;i++)
{
cout<<sum[i]<<endl;
}
return 0;
}
上記のforループsumは正解を提供していませんが、sumがforループの外側で使用されている場合、適切な答えが得られます。私のC++コードでループ外の和を出力すると、正しい答えが得られますが、while/whileのループはありません。
ちょうどニックピック:VLAは標準ではありませんC++ – WhiZTiM
私はそれがニックピック以上のものだと思っています。 OPがVLAの代わりに 'std :: vector'のような適切なC++構造体を使用した場合、問題はなく、この質問を投稿したことはありません。 – PaulMcKenzie