对于一些语句的不理解

P1090 [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G

2等同于 ```cpp if(a1[i] < a2[i]) w = a1[i++]; else w = a2[j++]; if(a1[i] < a2[i]) w += a1[i++]; else w += a2[j++]; ```
by zeropi @ 2022-06-23 16:47:16


1太懒了不想看题(逃
by zeropi @ 2022-06-23 16:47:53


@[Tanghaoge](/user/692647) 2的意思是 判断语句?为真:为假
by m249_chen @ 2022-06-23 16:48:10


@[zeropi](/user/373387) 好的,谢谢您QWQ
by tanghg @ 2022-06-23 16:48:42


因为最后要剩一个合并完的果子,所以只需要执行 $n-1$ 次。然后```?:```表示问号前的判断如果为真则值为冒号前面那个式子,否则为冒号后面那个式子。作用跟```if,else```差不多。
by 0htoAi @ 2022-06-23 16:48:45


@[m249_chen](/user/526765) 谢谢您
by tanghg @ 2022-06-23 16:48:58


合并果子属于是不用看题都能背到题面的题了
by 0htoAi @ 2022-06-23 16:49:17


@[0htoAi](/user/335366) oh好的谢谢您,搞明白了
by tanghg @ 2022-06-23 16:49:26


太感谢了大家
by tanghg @ 2022-06-23 16:50:29


这叫三目运算符`a1[i]<a2[j]?a1[i++]:a2[j++];`指如果`a1[i]<a2[j]`成立,就执行问号后的`a1[i++]`,否则就执行`a2[j++]` 优点是代码简洁,**据说**比if-else快
by Hughpig @ 2022-06-23 16:50:32


| 下一页