I Hope this Will Help You Alot
Just Go through it
And Subscribe My Channel Hello World Please.
Yours seems to fail on the following testcase:
1
8
675 499 431 629 611 412 420 389
My solution (with extra diagnostic output added) gives:
Day: 1 out of 8 Good
Day: 2 out of 8 Good
Day: 3 out of 8 Good
Day: 4 out of 8 Not good - price is 431 on day 3 which is <= 629
Day: 5 out of 8 Not good - price is 431 on day 3 which is <= 611
Day: 6 out of 8 Good
Day: 7 out of 8 Not good - price is 412 on day 6 which is <= 420
Day: 8 out of 8 Good
5
Thanks buddy!
what is your thought process behind this solution? i can’t understand ,please explain!
Your logic seems OK (well - it seems to give the correct answers, at least XD), but read the “Output” section of the question carefully
Tiny mistake Consider the testcase:
2
7
375 750 723 662 647 656 619
7
375 750 723 662 647 656 619
can you explain how to solve it in O(N)
I marked a price good if it is less than the minimum of the prices of the previous five days.
I am getting WA for this code. Is the algorithm wrong?
Thanks
Here’s my code below:
#include <iostream>
using namespace std;
int main() {
// your code goes here
int t;
cin >> t;
while(t--)
{
int n;
cin >> n;
int arr[n];
for(int i=0;i<n;++i)
cin >> arr[i];
int min = arr[0];
int cnt=1;
for(int i=1;i<n;++i)
{
if(arr[i] < min)
{
cnt++;
min = arr[i];
continue;
}
if(i>=5)
{
int minm = arr[i-5];
for(int j=i-5;j<i;++j)
{
if(arr[j] < minm)
minm = arr[j];
}
min = minm;
}
}
cout << cnt << endl;
}
return 0;
}
On my machine, it gives the wrong answer for the following testcase:
1
8
489 377 605 548 741 625 682 420
The answer should be 3
:
Day: 1 out of 8 Good
Day: 2 out of 8 Good
Day: 3 out of 8 Not good - price is 377 on day 2 which is >= 605
Day: 4 out of 8 Not good - price is 377 on day 2 which is >= 548
Day: 5 out of 8 Not good - price is 548 on day 4 which is >= 741
Day: 6 out of 8 Not good - price is 548 on day 4 which is >= 625
Day: 7 out of 8 Not good - price is 625 on day 6 which is >= 682
Day: 8 out of 8 Good
3
Thanks for the test case, I’ll debug it now.
EDIT: I completed it! Thanks again for the help