求题
  • 板块学术版
  • 楼主jinyixuan
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/8/15 10:46
  • 上次更新2023/11/3 03:42:13
查看原帖
求题
714844
jinyixuan楼主2023/8/15 10:46

交易

题目描述

小码君现在有 11 克黄金和 00 克白银,他将在接下来的 nn 天交易黄金和白银。 每一天都会有一个汇率AiA_i,如果在第 ii 天交易 (1 ≤ i ≤ N1\ \leq\ i\ \leq\ N),将发生以下情况:

如果你手中有 xx 克金,可以全部兑换为 x×Aix \times A_i克银,同理,如果有xx克银,可以全部兑换为 x/Aix/A_i克金。或者不进行兑换。

小码君的目标是最大化他最终拥有的黄金数量,这意味着它的交易次数必然是偶数次。他不需要知道最后能获得多少黄金,但需要请你找到一种策略来达到他的目标,用一个数组BB来表示,若第ii天进行兑换,则BiB_i为11,否则为00。

由于思维难度大于实现难度,请仔细观察样例的实现思路。

输入格式

第一行输入整数nn,表示接下来nn天进行交易。

第二行包含nn个整数,表示第ii天的汇率AiA_i,不会出现连续两天汇率相同的情况。

输出格式

输出nn个整数,第ii个数表示第ii天是否进行兑换,11为进行兑换,00为不兑换。

样例 #1

样例输入 #1

10
1 2 3 4 3 2 1 6 3 5

样例输出 #1

0 0 0 1 0 0 1 1 1 0

样例 #2

样例输入 #2

5
1 2 3 4 5

样例输出 #2

0 0 0 0 0

样例 #3

样例输入 #3

10
2 1 3 1 4 1 5 1 6 1

样例输出 #3

1 1 1 1 1 1 1 1 1 1

提示

1<=n,Ai<=1041<=n,A_i<=10^4

对于样例一:

前三天不管在哪天把黄金兑换成白银,都没有在第四天把黄金兑换成白银划算;而从第四天到第七天,汇率越低时将白银换成黄金肯定更划算,因此我们在第四天卖出黄金,在第七天买入黄金。

同理第八天卖出、第九天买入。

但是卖出和买入是需要成对操作的,因为题目要求最后持有的是黄金。因此第十天找不到与之配对的日子,故不操作。

对于样例二:

由于找不到和样例一所举例的高点卖出低点买入,因此都不进行操作。

2023/8/15 10:46
加载中...