本人是潍坊一中的wyw,69级,今年高一,
现在马上就要NOIP了, 打算把历年的NOIP普及、提高组题目都做一下, 然后写写解题报告∵这个报告主要是给初中同学看的,所以我会写的详细一点
NOIP2014普及组解题报告
Prolem 1 珠心算测试(count)
这道题其实很简单, 意思就是说给你一些数 a1,a2,a3,a4...an ,
然后让你回答有多少个A+B=C(A ≠ B ≠ C)满足(回答C的数量,而不是等式的数量)
方法一
那么有一种很明显的做法就是三层循环枚举C、A、B,
注意:C是在最外层,若找到了一个A和一个B,满足上述等式,则C是一个符合要求的解,这时ans++,并且退出当前枚举,枚举下一个C,这种算法的时间复杂度是 O(N3)
而我当时没想到这个算法,因为有更好用而且简单更不容易出错的解法,
方法二
两重循环,分别枚举i=1...n,j=i+1...n,如果ai+aj这个数在集合中存在,那么you[ai+aj]←true,然后再从a1到an做一次扫