zero sum subsequence problem solution 1

题目是这样的,给定一个整数序列,比如[1, 2, -1, 8, -9],要求找出一个子序列,其所有数字的和为0,比如子序列[2, -1, 8, -9],并输出子序列在主序列中的位置,比如[2, -1, 8, 9]在主序列[1, 2, -1, 8, -9]中的位置为[1, 4]。

以下是我想到的一个方法,暂时不清楚怎么计算这个的时间复杂度。原理是这样的,对于序列[1, 2, -1, 8, -9],设置一个和序列。初始为[0, 0, 0, 0, 0],长度和输入序列一致。
顺序读取输入序列,第一次遇到1,尝试在和序列的[0, 0]区别内增加1,结果为[1, 0, 0, 0, 0]。为什么这么做呢,这样,输入序列区间[0, 0]的和就计算出来了。
第二次遇到2, 尝试在和序列[0, 1]区间内增加2,结果为[3, 2, 0, 0, 0],这样,输入序列区间[0, 1], [1, 1]的和就计算出来了。没有发现0和序列。
接下来依此类推,发现[1, 4]区间的和为0,输出为(1, 4)。代码如下(python):

执行和输出,debug为和序列的内容。

MH4的配装和配装器使用小记

最近由于996,没怎么玩,但是配装之前就想要写写了。

作为一个MH4新手,一开始不知道怎么弄防具,甚至防具有剑士和ガンナー用的都不知道。好在玩了一段时间自己也领会了,而且找到了个不错的推荐防具的页面。村5和集会所3之前,我就参照上面推荐的前三套剑士服做了一下。之后又去打黑蚀龙,大大改变了自己的战术——防具一定要选好技能,陷阱之类的不是仅仅在捕获时用的。

于是乎按照集英社的攻略书上的推荐技能,想要配一套体力+50和纳刀术的防具。不过自己配感觉不放心,装饰品,防具技能点要一个个算过来,何况还有胴系统倍化。后来在TGBUS的MH4论坛上看到配装器,就尝试着用了一下,感觉还不错。个人的使用方法如下:

选择你要的技能,比如体力+50和纳刀术,设置你的武器槽数,比如我的是1个,游戏进度是村5集3,按下检索就会出现筛选出来的结果。但这还不能直接用,需要排除一些你现在不能做的防具,或者你不太想做的防具(因为素材难打),还有去另外一个tab中去除你不能造或不想造的装饰品,按照某个值排序,比如防御,不断重复这样的操作,最终得到的才可能是你想要的。最终配好之后,建议加入我的集合,免得下次再重复这样的操作。

老实说,配装器用的是穷举的方法,因此出来的数量可能超过9999(配装器左下角数量限制是9999),而且貌似每次排除的装备都要重新设置一遍。用的次数多了,感觉按照技能选择装备是个不错的方法,但是还是需要一些通用的装配。换句话说,推荐的防具和自己配还是需要的,配装器只是作为参考,特别是你觉得配出来能力可以,但是样子奇丑的时候……