OIer 的 CTF Web 密码口令学习笔记
CTFer 就需要学会破解密码(大雾
本文一切例题均可在 CTFHub 找到。
你有一个本子,你要往上面写全部的长度为 \(n\) 的 \(b\) 进制数字,每一页可以写 \(c\) 个。要求所有数字必须严格不含前导 \(0\)。求最后一页上有多少个数字
数据范围:\(2 \leq b < 10^{10^6}, 1 \leq n < 10^{10^6}, 1 \leq c \leq 10^9\)
小 Z 是一个小有名气的钢琴家,最近 C 博士送给了小 Z 一架超级钢琴,小 Z 希望能够用这架钢琴创作出世界上最美妙的音乐。
这架超级钢琴可以弹奏出 \(n\) 个音符,编号为 \(1\) 至 \(n\)。第 \(i\) 个音符的美妙度为 \(A_i\),其中 \(A_i\) 可正可负。
一个“超级和弦”由若干个编号连续的音符组成,包含的音符个数不少于 \(L\) 且不多于 \(R\)。我们定义超级和弦的美妙度为其包含的所有音符的美妙度之和。两个超级和弦被认为是相同的,当且仅当这两个超级和弦所包含的音符集合是相同的。
小 Z 决定创作一首由 \(k\) 个超级和弦组成的乐曲,为了使得乐曲更加动听,小 Z 要求该乐曲由 \(k\) 个不同的超级和弦组成。我们定义一首乐曲的美妙度为其所包含的所有超级和弦的美妙度之和。小 Z 想知道他能够创作出来的乐曲美妙度最大值是多少。
数据范围:\(-1000 \leq A_i \leq 1000\),\(1 \leq L \leq R \leq n\) 且保证一定存在满足要求的乐曲。
约翰到商场购物,他的钱包里有 \(k (1 \le k \le 16)\) 个硬币,面值的范围是 \(1 \sim 10^8\)。
约翰想按顺序买 \(n\) 个物品 \((1 \le n \le 10^5)\),第 \(i\) 个物品需要花费 \(c_i\) 块钱,\((1 \le c_i \le 10^4)\)。
在依次进行的购买 \(n\) 个物品的过程中,约翰可以随时停下来付款,每次付款只用一个硬币,支付购买的内容是从上一次支付后开始到现在的这些所有物品(前提是该硬币足以支付这些物品的费用)。不幸的是,商场的收银机坏了,如果约翰支付的硬币面值大于所需的费用,他不会得到任何找零。
请计算出在购买完 \(n\) 个物品后,约翰最多剩下多少钱。如果无法完成购买,输出 \(-1\)。
平面直角坐标系的第一象限内有一块左下角为 \((0,0)\) 右上角为 \((10^{100},10^{100})\) 的矩形区域,区域内有正偶数个整点,试求出这样一条从 \((0,0)\) 出发,到 \((10^{100},10^{100})\) 的在区域内部的折线:
可以证明一定存在一条满足限制的折线,你只需要输出满足限制的折线的折点数即可。
注意折点的坐标可以不是整数。
每组测试点有 \(T\) 组数据,对于所有测试点,\(1 \leq T \leq 10^4\),\(1 \leq \sum n \leq 5 \times 10^5\),\(1 \leq n \leq 10^5\),\(1 \leq x_i,y_i \leq n\),保证 \(n\) 为正偶数,每组数据中不存在两个坐标相同的整点。