#刷题交流#
【291.禁着点方案数】
解题方法总结如下:
理解问题:确定问题的输入和输出。在这个问题中,输入是一个禁着点数组的长度n、禁着点数组a以及目标和s。输出是满足x+y=s且x和y都不在禁着点数组中的正整数对数量。
数据结构选择:选择合适的数据结构来存储禁着点,以便快速查找。在这个问题中,HashSet是一个很好的选择,因为它提供了O(1)时间复杂度的查找操作。
遍历可能的解:遍历所有可能的x值(在这个问题中,从1到s-1),并计算对应的y值(y = s - x)。
检查条件:对于每个x和y的组合,检查它们是否都不在禁着点数组中。
计数:如果x和y都不在禁着点数组中,则增加满足条件的正整数对计数器。
返回结果:遍历完成后,返回计数器的值作为结果。
测试:编写测试样例来验证算法的正确性。在这个问题中,有三个测试样例用于验证solution方法的输出是否与预期结果相符。
展开
评论