本帖最后由 凌语丶 于 2023-1-6 09:29 编辑
向下取整:%s_round(变量-0.5,0)%
向上取整:%s_round(变量+0.5,0)%
提交几组变量数据,hack掉这两个错误的SBPlaceholder写法并更正
向下取整:%s_round(变量-0.5,0)%
向上取整:%s_round(变量+0.5,0)%
提交几组变量数据,hack掉这两个错误的SBPlaceholder写法并更正
本帖最后由 季楠 于 2023-1-6 09:38 编辑
这组变量的错误在于:
对于每一个整数值,它的向上取整返回值都是下一个整数,而非要求的该整数值本身。
这组变量的错误在于:
对于每一个整数值,它的向上取整返回值都是下一个整数,而非要求的该整数值本身。
季楠 发表于 2023-1-6 09:25
向下取整: %s_int(变量)%
向上取整: %s_int(变量)+1%
这个取整难以评价,他的本质是去掉字符串中除了第一个减号的其他所有符号
另外,能给出一组hack数据吗?我感觉我写的是错的但是目前还没发现hack
本帖最后由 季楠 于 2023-1-6 10:05 编辑
抱歉我起初认为它是将小数类型强制转换为整数。
凌语丶 发表于 2023-1-6 09:27
这个取整难以评价,他的本质是去掉字符串中除了第一个减号的其他所有符号
另外,能给出一组hack数据吗? ...
抱歉我起初认为它是将小数类型强制转换为整数。
本帖最后由 季楠 于 2023-1-6 10:12 编辑
请看一下修改后的~
凌语丶 发表于 2023-1-6 09:27
这个取整难以评价,他的本质是去掉字符串中除了第一个减号的其他所有符号
另外,能给出一组hack数据吗? ...
请看一下修改后的~
季楠 发表于 2023-1-6 09:34
请看一下修改后的:
round(1.0) > 1 false return round(1.0) + 1 // 2
round(1.0) < 1 false return round(1.0) - 1 // 0
本帖最后由 季楠 于 2023-1-6 10:05 编辑
是的,这和题目中的逻辑存在相同的错误。
凌语丶 发表于 2023-1-6 09:39
round(1.0) > 1 false return round(1.0) + 1 // 2
round(1.0) < 1 false return round(1.0) - 1 // 0
是的,这和题目中的逻辑存在相同的错误。
本帖最后由 季楠 于 2023-1-6 10:12 编辑
尝试强制修正错误的返回值:
向上取整:%s_if(round(变量+0.5,0)=(变量+1),变量,round(变量+0.5,0))%
尝试强制修正错误的返回值:
向上取整:%s_if(round(变量+0.5,0)=(变量+1),变量,round(变量+0.5,0))%
季楠 发表于 2023-1-6 08:00
尝试强制修正错误的返回值:
向上取整:%s_if(round(变量+0.5,0)=(变量+1),变量,round(变量+0.5,0))%
srds, 简化后ceil(1.0)不还是2嘛