Re: [問題] 面試考題 實作?:運算子
※ 引述《mongsq (孟)》之銘言:
: 最近面試遇到一個問題
: 實作?:運算子
: a ? b : c => int cond(int a, int b, int c)
: 只能用 + - * / ~ ! ^ | & >> << 運算子
: 不能用if或loop
: 題目是說一行程式碼可以完成
: 最多可以define一個8-bits的常數
: 想請問大家怎麼解
: 謝謝~
static int cond(int a, int b, int c) {
return (~-!a) & b | (-!a) & c;
}
實際測試下去和a ? b : c是一樣的。
程式碼在:
http://codepad.org/teTOEdl3
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.101.139
→
11/07 02:49, , 1F
11/07 02:49, 1F
→
11/07 02:50, , 2F
11/07 02:50, 2F
討論串 (同標題文章)