比赛场次 | 695 |
---|---|
比赛名称 | 2025暑期集训第7场 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2025-08-11 13:00:00 |
结束时间 | 2025-08-11 17:30:00 |
开放分组 | 全部用户 |
组织者 | syzhaoss |
注释介绍 | 一棵大树,能走天下吗? |
题目名称 | Power Calculus |
---|---|
输入输出 | pow_cal.in/out |
时间限制 | 2000 ms (2 s) |
内存限制 | 64 MiB |
测试点数 | 10 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
|
AAAAAAAAAA | 1.300 s | 3.68 MiB | 100 |
|
AAAAAAAAAA | 3.353 s | 3.64 MiB | 100 |
|
AAAAAAAAAA | 3.386 s | 3.66 MiB | 100 |
|
AAAAAAAAAA | 3.514 s | 1.62 MiB | 100 |
|
AAAAAAAAAA | 4.052 s | 3.64 MiB | 100 |
|
AAAAAAAAAA | 4.424 s | 3.65 MiB | 100 |
|
AAAAAAAAAA | 4.432 s | 3.64 MiB | 100 |
|
AAAAAAAAAA | 4.540 s | 3.67 MiB | 100 |
|
AAAAAAAAAA | 4.600 s | 3.76 MiB | 100 |
|
AAAAAAAAAA | 4.840 s | 3.66 MiB | 100 |
|
AAAAAAAAAA | 5.005 s | 3.65 MiB | 100 |
|
AAAAAAAAAA | 5.412 s | 3.68 MiB | 100 |
|
AAAAAAAAAA | 6.090 s | 3.61 MiB | 100 |
|
AATAATTAAT | 14.689 s | 4.06 MiB | 60 |
|
AATTTTTTTT | 24.079 s | 3.44 MiB | 20 |
|
AATTTTTTTT | 24.893 s | 3.45 MiB | 20 |
|
AATTTTTTTT | 26.304 s | 3.50 MiB | 20 |
|
RRRRRRRRRR | 0.024 s | 3.65 MiB | 0 |
|
EEEEEEEEEE | 1.464 s | 3.54 MiB | 0 |
给出正整数$n$,若只能使用乘法或除法,输出使$x$经过运算(自己乘或除自己,以及乘或除运算过程中产生的中间结果)变成$x^n$的最少步数
e.g.
从$x$开始 并重复乘以 $x$,我们可以用三十次乘法计算 $x^{31}$:
$x^2 = x * x, x^3 = x^2 * x, x^4 = x^3 * x, ..., x^{31} = x^{30} * x。$
这不是计算x 31的最短乘法序列 。有很多方法只有七个乘法。以下是其中之一:
$x^2 = x * x, x^4 = x^2 * x^2, x^8 = x^4 * x^4, x^{10} = x^8 * x^2, x^{20} = x^{10} * x^{10}, x^{30} = x^{20} * x^{10}, x^{31} = x^{30}* x。$
但是,无法用更少的乘法来计算 $x^{31}$。因此,这是仅通过乘法计算$x^{31}$的最有效方法之一 。
如果也可以使用除法,我们可以找到较短的操作序列。可以通过六个运算(五个乘法和一个除法)来计算 $x^{31}$:
$x^2 = x * x, x^4 = x^2 * x^2, x^8 = x^4 * x^4, x^{16} = x^8 * x^8, x^{32} = x^{16} * x^{16}, x^{31} = x^{32} ÷ x。$
若干行数据,每行一个正整数n,数据以单独成行的0结束
若干行数据,对应每行输入的n所需的步数
1 31 70 91 473 512 811 953 0
0 6 8 9 11 9 13 12
请不要打表,请使用搜索,暴力请剪枝(避免卡评测机)
前20%的测试点,测试点组数 <= 100,n <= 100.
前100%的测试点,测试点组数 <= 1000,n <= 1000.
luogu & SPOJ