解題心得
題目中的利潤跟我認知的不一樣,整題花在理解題意上面的時間最久。
程式碼
#include<iostream>
using namespace std;
int main()
{
int n, d, a[101] = { 0 }, sum = 0, current = -1;
bool flag = false;
cin >> n >> d;
for (int i = 0; i < n; i++)
{
cin >> a[i];
if (i == 0)
{
current = a[i];
flag = true;
}
else if (flag && a[i] >= current + d)
{
sum += a[i] - current;
current = a[i];
flag = false;
}
else if (!flag && a[i] <= current - d) // 當下沒有持有股票
{
current = a[i];
flag = true;
}
}
cout << sum;
return 0;
}
沒有留言:
張貼留言