刁刁茶茶丸 发布于七月 17, 2024 分享 发布于七月 17, 2024 1 0 0 =x 0 1 0 =y 0 0 1 =z 然后 根据斯芬给出的x,y,z的位数设定下次提问的k1 k2 k3的值 例如说x=21 y=555 z=9998 那么第四次提问时的k1 k2 k3的值就设定为 1 , 1000,10000000。 理想中的结果就会是 99980555021 因为通过位数将前三次提问得到的参数分离开了,所以第五次提问针对出现问题的那个值重复一次就好了w 链接到点评
刁刁茶茶丸 发布于七月 18, 2024 分享 发布于七月 18, 2024 (已修改) 18 小时前,Nemakori说道: emmmm 因为原题目是来源于算法竞赛中的一道题,有数据范围限制QwQ,所以我可能需要一段时间去消化佬的做法,不过这个思路真的很有意思 不过我有个提问 假如第四次的回答是99980555021 + 10000000000的话 该怎么确定a,b,c的值,此时第四次回答的错误均可能来源于a,b,c,比如a是21+10000000000,b是10000000+555,c是1000+9998或者第四次回答均可以产生错误,那么第五次提问该如何验证 如果斯芬提前知道这样的提问方式,并且有意识地来选择让数据出错的方式来专门干扰这种方式的话 仅凭第四次提问确实没办法独立完成对数据的校对,但我们可以通过拉大第五次提问的位数来对抗这种混淆 例如斯芬给出的第四次回答的位数为1*10^10, 那么第五次提问就将 k1 k2 k3设定为 1 , 1*10^(10+1),1*10^(20+1) 或者将k1 k2 k3的顺序进行调转 例如改成 10000000,1,1000 这样...应该...就能获取足够的信息来确定abc的值了(瘫) 用具体数字来说明的话(我取个小一点的数字吧...) 不出现混淆的情况: a:2 b:3 c:5 d:50302 出现混淆的情况: 混淆a:2 真实a:1000002 b:3 c:5 d:1050302 将间隔调整为1*10^(6+1)后 e:5000000031000002 就可以获取到无混淆的abc值了.... (数零数到头昏) 七月 18, 2024,由刁刁茶茶丸修改 链接到点评
推荐贴