ENG  RUS Timus Online Judge
Online Judge
Problems
Authors
Online contests
Site news
Webboard
Problem set
Submit solution
Judge status
Guide
Register
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

## Discussion of Problem 1001. Reverse Root

What is happening?
Posted by Savchuk Nickolay 24 Mar 2021 16:51
Why is here the runtime error on the 6 test?
What test is 6?

#include <iostream>
#include <cmath>
using namespace std;

void ghjkl(long double p)
{cout << fixed;
cout.precision(4);
cout << p << endl;}

int main() {
long double a[1000]={-1.0};
long long i=0;
while(cin)
{cin >> a[i];
i++;}
i=i-2;
long double b[1000];
for(int k=0; k<1000; k++)
{b[k]=sqrt(a[k]);}
for(int m=i; m>=0; m--)
{ghjkl(b[m]);}
return 0;
}

Edited by author 24.03.2021 16:53

Edited by author 24.03.2021 16:54
Re: What is happening?
Posted by Vladislav 31 Mar 2021 19:27
i don't know

Edited by author 31.03.2021 19:27

Edited by author 31.03.2021 19:27

Edited by author 31.03.2021 19:27
Re: What is happening?
Posted by Savchuk Nickolay 10 Jun 2021 03:34
Oh, I have understood. The array isn't the needed collection for this task. Stack is better.

#include <iostream>
#include <stack>
#include <cmath>
using namespace std;

int main() {
stack<double> a;
double b;
int c=0;
while(cin)
{cin >> b;
a.push(b);
c++;}
c-=1;
a.pop();
for(int i=0; i<c; i++)
{cout << fixed;
cout.precision(4);
cout << sqrt(a.top()) << endl;
a.pop();}
return 0;
}

Edited by author 10.06.2021 03:35
Re: What is happening?
Posted by Savchuk Nickolay 10 Jun 2021 03:54
Or you can use deque:
#include <iostream>
#include <queue>
#include <cmath>
using namespace std;

int main() {
deque<double> a;
double b;
int c=0;
while(cin)
{cin >> b;
a.push_back(b);
c++;}
c-=1;
a.pop_back();
for(int i=0; i<c; i++)
{cout << fixed;
cout.precision(4);
cout << sqrt(a.back()) << endl;
a.pop_back();}
return 0;
}