发布网友 发布时间:2022-04-23 06:51
共5个回答
热心网友 时间:2022-06-17 01:28
1到99一共有99个数,1+99=100 2+98=100……一共有49个100再加一个中间数49所以结果是49×100+49=4949
热心网友 时间:2022-06-17 01:28
UPDATE:2021-08-19 888 赞纪念(我知道数字写错了,是 99110 而不是 99100,但是懒得改了(((答主 @whoishower 已经算到了 929那么这个 929 还能有什么理解呢?显然我们可以发现929 = ((5+2-0-1*3+1+4)+(5+2+0+1+3*1*4)*((5-2*0+1+3+1-4)+(5+2+0+1+3*1*4)*((5-2-0+1*3*1-4)+(5+2+0+1+3*1*4)*(5+2-0+1-3-1-4))))也就是这个表示的是 5201314那么答案显而易见了,和上面答主说的一样,她喜欢你如果有人不认可 929 算法的话,那么比如我们单独看题目,99 + 1 = 10,只看数字,99100那么这个数字有什么意义呢?注意到99100 = ((5*2*0-1-3*1+4)+(5+2+0+1+3*1*4)*((5+2-0*1+3+1+4)+(5+2+0+1+3*1*4)*((5+2+0*1*3*1*4)+(5+2+0+1+3*1*4)*((5+2*0*1+3*1+4)+(5+2+0+1+3*1*4)*(5*2*0-1-3*1+4)))))所以,还是隐含了 5201314,还是她喜欢你因此不要多想了,快点去找她吧又试了一下,这些还可以推导出来 5211314 和 2013614929 = (11+18*(15+18*(2+18*0))) = ((2+0*1*3+6-1+4)+(2+0+1+3*6+1-4)*((2+0-1+3*6-1*4)+(2+0+1+3*6+1-4)*((2+0-1+3-6+1*4)+(2+0+1+3*6+1-4)*(2*0*1-3+6+1-4))))99100 = (10+18*(15+18*(17+18*(16+18*0)))) = ((2-0+1-3+6+1*4)+(2-0+1+3*6+1-4)*((2+0+1*3+6+1*4)+(2-0+1+3*6+1-4)*((2+0+1+3*6*1-4)+(2-0+1+3*6+1-4)*((2+0*1+3+6+1+4)+(2-0+1+3*6+1-4)*(2-0*1*3-6*1+4)))))929 = (9+20*(6+20*(2+20*0))) = ((5*2-1-1*3-1+4)+(5+2+1*1+3*1*4)*((5+2+1-1+3-1*4)+(5+2+1*1+3*1*4)*((5-2-1-1-3*1+4)+(5+2+1*1+3*1*4)*(5-2-1*1+3-1-4))))99100 = (0+20*(15+20*(7+20*(12+20*0)))) = ((5+2*1-1*3*1-4)+(5+2*1+1+3*1*4)*((5+2*1+1+3+1*4)+(5+2*1+1+3*1*4)*((5*2-1*1+3-1-4)+(5+2*1+1+3*1*4)*((5*2-1+1-3+1+4)+(5+2*1+1+3*1*4)*(5+2*1-1*3*1-4))))) 929 来自于答主 whoishower突然想到的一个脑洞。看到很多人都在想办法往数字上靠拢,然后我就想到了野兽先辈论证器思路参考问题 提到的 打表 + 类似于秦九韶的分解成多项式。DFS 先预处理 0 ~ 20 的式子,然后将其进行分解成 0 ~ 20 的算式,之后进行替换。比如99100
(0+20*4955)
(0+20*(15+20*247))
(0+20*(15+20*(7+20*12)))
(0+20*(15+20*(7+20*(12+20*0))))
((5+2*0+1-3+1-4)+(5+2-0+1+3*1*4)*((5*2+0-1+3-1+4)+(5+2-0+1+3*1*4)*((5*2*0*1+3*1+4)+(5+2-0+1+3*1*4)*((5+2*0*1+3+1*4)+(5+2-0+1+3*1*4)*(5+2*0+1-3+1-4)))))
99100代码import random
val = "1145141919810" # 论证的数字
piece = 50 # 多项式每一项倍数
choice_count = 5 # 最多几个结果
# ============下面的不需要改了============
v = []
ope = ["+", "-", "*", "**", "//"]
flag = 0
target = 0
ans = []
data = []
def dfs(depth):
global v, ope, flag, target, ans
if choice_count != -1 and len(ans) >= choice_count:
return
# print(v)
if depth == len(val) - 1:
for i in range(len(v) - 1):
if v[i] == "**" and v[i + 1] == "**":
return
s = "{}".join(list(val)).format(*v)
try:
x = eval(s)
except ZeroDivisionError as e:
return
if x == target:
flag = True
ans.append(s)
return
for o in ope:
v[depth] = o
dfs(depth + 1)
return
if __name__ == "__main__":
print("预处理中")
for i in range(len(val)):
v.append("+")
for i in range(0, piece + 1):
ans = []
target = i
flag = False
print(f"{i}......", end="\r")
kill = False
try:
dfs(0)
except KeyboardInterrupt as e:
kill = True
pass
if flag:
# print(ans)
print(f"{i} 发现 {len(ans)} 项")
data.append(ans)
#print(len(data), "QW")
pass
else:
print(f"{i} 未发现")
piece = i - 1
break
if kill:
piece = i
break
print(f"预处理完成。乘数最大是 {piece}")
input_val = int(input("请输入一个数字: "))
x = input_val
s = "qwq"
while x != 0:
t = f"(_{x % piece}_+_{piece}_*qwq)"
print(s.replace("_", "").replace("qwq", f"{x}"))
s = s.replace("qwq", t)
x -= x % piece
x //= piece
s = s.replace("qwq", "_0_")
print(s.replace("_", ""))
for i in range(0, piece + 1):
s = s.replace(f"_{i}_", f"({random.choice(data[i])})")
print(s)
print(eval(s))
(我不会说当把符号集扩充到乘方运算之后,114514 也可以推出来(划掉 114514 = (14+20*(5+20*(6+20*(14+20*0)))) = ((1**1+4+5+1*4)+(1-1**4+5*1*4)*((1**1*4+5**1-4)+(1-1**4+5*1*4)*((1*1**4+5*1**4)+(1-1**4+5*1*4)*((1**1+4+5+1*4)+(1-1**4+5*1*4)*(1**1**4-5+1*4)))))
热心网友 时间:2022-06-17 01:29
付费内容限时免费查看回答亲,计算过程如下:
(1+99)×99÷2
=100×99÷2
=4950
亲,有疑问接着问啊!
热心网友 时间:2022-06-17 01:29
从1加到99等于4950;
具体计算步骤如下:
1、首先从1一直加到99一共有99个数字;
2、以50为分界,比五十大的数有49个,比五十小的数有49个;
3、观察规律可知,1加99等于100,2加98等于100,3加97等于100等等;
4、由步骤3的规律可知1加到99等于100乘以49的积加50等于4950。
热心网友 时间:2022-06-17 01:30
从1加到99,是有一个解题方法的, 1+99=10,2+98=100, 所以从一加~99,应该是4900+50,=4950