好数(number)
题目描述
小 Z 有一个长度为 $n$ 的序列 $A={a_1,a_2,\cdots,a_n}$。
如果对于数 $a_i$,在下标为 $[1,i-1]$ 的区间内如果存在三个数使得这三个数这和恰好等于 $a_i$,那么称这个数为好数。
小 Z 想知道这个数列中共有多少个这样的好数。
注意:数列中的数字可以重复使用
输入格式
第一行输入一个正整数 $n$ 表示数列的长度。
第二行输入 $n$ 个整数 $a_1,a_2,\cdots,a_n$。
输出格式
输出一行一个正整数表示好数的个数。
样例 #1
样例输入 #1
2
1 3
样例输出 #1
1
样例 #2
样例输入 #2
6
1 2 3 5 7 10
样例输出 #2
4
样例 #3
样例输入 #3
3
-1 2 0
样例输出 #3
1
数据范围
对于 $40%$ 的数据,$n \le 50$。
对于 $70%$ 的数据,$n \le 500$。
对于 $100%$ 的数据,$n \le 5000,-10^5 \le a_i \le 10^5$。
小 Z 的彩票序列(lottery)
题目描述
众所周知,小 Z 很贫穷。当上帝听说这件事后,他决定帮助这个可怜的小 Z 摆脱悲惨的处境。
有一天,小 Z 在梦中遇到了上帝,上帝给了他一个神秘的数字 $x$,这个数字将会给小 Z 带来巨大的财富。具体来说这个数字 $x$ 是彩票的号码结果,其价值高达五千万美元。
小 Z 非常兴奋,以至于小 Z 准备购买 $n$ 张彩票,彩票编号为 $1,2,\cdots,n$,每张彩票的数字可以分别用 $a_1,a_2,\cdots,a_n$ 表示。但是小 Z 还没有收到这些彩票。
这个彩票的中奖规则是这样的,小 Z 可以从收到的彩票中任意挑选一些彩票,假设选 $k$ 张彩票,彩票编号为 $b_1,b_2,\cdots,b_k$,如果这些彩票的按位或,即 $a_{b_1} | a_{b_2} | \cdots | a_{b_k}=x$,那么小 Z 就可以获得这一份大奖。其中 $|$ 表示 C++ 中的按位或运算。
作为彩票店的老板小 Y,不想让小 Z 获得这些大奖,所以小 Y 会在发给小 Z 这 $n$ 张彩票之前,拿走(删除)一些彩票。使得小 Z 收到删掉之后剩余的彩票序列后,无论小 Z 选择哪些彩票参与按位或运算,都无法中奖。
问小 Y 最少需要拿走(删除)多少张彩票?
输入格式
第一行输入两个正整数 $n,x$ 分别表示彩票个数和中奖数字。
第二行包含 $n$ 个整数 $a_1,a_2,\cdots,a_n$。
输出格式
输出一行一个整数表示答案。
样例 #1
样例输入 #1
3 7
4 2 1
样例输出 #1
1
数据范围
对于 $20%$ 的数据,$n\le 10,1\le x,a_i \le 10^4$。
对于 $50%$ 的数据,$n\le 10^3,1\le x,a_i \le 10^5$。
对于 $100%$ 的数据,$n\le 10^5,1\le x,a_i \le 10^9$。
扁平化最短路(path)
题目描述
有一个 $2$ 行 $n$ 列的网格状地牢,每个格子都是一个房间,你最开始在左上角坐标为 $(1,1)$ 的房间,每次可以走向当前所在房间的相邻房间(如果存在的话)。
但是地牢显然不是旅游景点,里面充满了危险。你身后随时有怪物追逐,因此你不能走进你以前已经进入过的房间;同时怪物也会封堵你的逃跑路线,因此你不能进入当前房间左侧的房间。
然而也并不是无法逃脱,只要你了解了整个地牢的结构,你就能安全离开这里。
每个房间有一个复杂程度 $a_{i,j}$,表示你经过这个房间需要花费的时间(包括出发点的 $(1,1)$ 房间),你经过一个房间后就会获取这个房间的情报。
在 $(1,1)$ 房间中有 $k$ 个道具,每个道具使用后可以立刻获取任何一个房间的情报。你可以在到达 $(1,1)$ 后的任何时候使用它们,但是每个道具只能使用一次。
- 即你在到达起点,站在起点 $(1,1)$ 格子后,就获得了 $k$ 个道具,在此后的任意一个时间节点,都可以使用这些道具。
当你获取了所有 $2n$ 个房间的情报后,你就可以成功逃脱。
为了防止被追上,动作自然越快越好,那么,你最少需要多少时间才能逃脱?
输入格式
第一行两个整数 $n,k$,表示地牢的列数和持有的道具数。
接下来两行每行 $n$ 个整数 $a_{i,j}$,表示探明对应房间情报所需要的秒数。
输出格式
一行一个整数,表示逃脱需要的最少秒数。
样例 #1
样例输入 #1
5 2
9 5 7 4 2
8 6 1 3 0
样例输出 #1
30
数据范围
对于前 $20%$ 的数据,$k=0$。
对于前 $50%$ 的数据,$k\le 1$。
对于另外 $10%$ 的数据,$k\ge 2n$。
对于另外 $20%$ 的数据,$n\le 10$。
对于 $100%$ 的数据,$1\le n\le 10^5, 0\le k \le 100, 0\le a_{i,j} \le10^9$。