Browse Category

Ai算法

Nowcoder 105D Fibonacci 进制 (数论)

Fibonacci 数是非常有名的一个数列,它的公式为 f(n)=f(n-1)+f(n-2), f(0)=1, f(1)=2 。
我们可以把任意一个数 x 表示成若干不相同的 Fibonacci 数的和,比如说 14 = 13+1 = 8+5+1 = 8+3+2+1。
如果把 Fibonacci 数列作为数的位权,即 f(i) 作为第 i 位的位权,每位的系数只能是 0 或者 1 ,从而得到一个 01 串。 比如 14 可以表示成 100001, 11001, 10111 。我们再把这个 01 串看成 2 进制,再转成 10 进制以后就变成了 33, 25, 23 。为了避免歧义,我们将使用最小的那个值 23 。

BZOJ 2115 [Wc2011] Xor (线性基)

考虑一个边权为非负整数的无向连通图,节点编号为 1 到 N,试求出一条从 1 号节点到 N 号节点的路径,使得路径上经过的边权值的 XOR 和最大。
路径可以重复经过某些点或边,当一条边在路径中出现了很多次时,其权值在计算 XOR 和时也要被计算相应多的次数。

codevs 2498 IncDec Sequence (差分数组)

给定一个长度为 n 的数列 {a1,a2...an} ,每次可以选择一个区间 [l,r] ,使这个区间内的数都加一或者都减一。
问至少需要多少次操作才能使数列中的所有数都一样,并求出在保证最少次数的前提下,最终得到的数列有多少种。

TopCoder TCO 2018 Round 1A 500 (思维)

在 Resistance 这款游戏中,存在 resistance members 与 spies 这两种玩家,已知 resistance members 一定想让任务成功,而 spies 则不一定,所有失败的任务一定是因为 spies 的支持所导致的,求每个人是 spies 的概率。