Soft_Job 板


LINE

※ 引述《ku72 (ku72)》之銘言: : const char* str[]={Fizz Buzz 相關定義到15個}: : for (int i=0;i<上限;++i){ : printf (str[i&0xF]); : } : 要求效率的話 我會這樣打 : 首先15=0xF 上限在可以用位元表示的 : 用%沒有位元處理 : 當然也有機車一點的 : const char* str ="Fizz\n ..... 把1~15都定義好"; : for (.......每次加15){ : printf (str); : } : 這種題目都是想看看 : 被測試者的腦袋靈活度 : 所以 用點不太正常方式其實是被接受的 : 捷運上隨便打的 : 具體思路應該是對的 : 語法不保證xd 快下班時看到這題,可能是leetcode刷得不夠多,還沒看過,覺得還滿有趣的XD 不知道可不可以用c++和STL,可以的話我會這樣做 #include <iostream> #include <algorithm> #include <unordered_map> #include <functional> using namespace std; typedef function<void(void)> Handler; typedef unordered_map<int, Handler> Handlers; int main() { vector<int> target = { 3,5 }; int max = 50; Handlers handlers; Handler handle3 = []() {cout << "Fizz"; }; Handler handle5 = []() {cout << "Buzz"; }; handlers[3] = handle3; handlers[5] = handle5; auto check = [](int checker, int checked, Handlers handlers)->int { if (checked%checker == 0 && checked != 0) { handlers[checker](); return 1; } else return 0; }; auto _check = bind(check, placeholders::_1,placeholders::_2, handlers); int flag = 0; for (int I = 0; I < max; I++) { for (auto J : target) { flag|=_check(J, I); } if (flag == 0) { cout << I << endl; } else cout << endl; flag = 0; } } 原本的bug修好了 Java應該也可以用類似的作法,但小弟Java不是很熟 借問一下各位前輩Java的話是不是就要先定義一個Interface 然用不同的Implemented Class才能像C++的func obj這樣的用法? --
QR Code



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.87.248
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1492680229.A.D9D.html ※ 編輯: w0005151 (1.171.87.248), 04/20/2017 17:26:39
1F:→ w0005151: 沒看清楚題目xd check裡要多一行else cout<<checker 04/20 17:59
2F:→ w0005151: 痾 也不大對 我回家在試好了 現在沒電腦 04/20 18:01
※ 編輯: w0005151 (1.171.87.248), 04/20/2017 19:39:44 ※ 編輯: w0005151 (1.171.87.248), 04/20/2017 19:47:37
3F:推 steve1012: 看了一下基本上跟原本的2概念一樣?面試挑單純的寫可 04/20 22:17
4F:→ steve1012: 能更好 04/20 22:17
5F:→ w0005151: 小弟是覺得這樣寫比較好維護與擴充 04/20 23:37
6F:→ w0005151: 面試的時候這個答案會被認為畫蛇添足嗎? 04/20 23:37
7F:推 steve1012: 好奇要是多加一個7的話這個跟2的擴充 04/21 00:51
8F:→ steve1012: 多加七的話你target handle 都各加一個吧 04/21 00:52
9F:推 steve1012: 或是有什麼特別比2更好擴充的地方嗎 效能上沒優勢 我 04/21 00:54
10F:→ steve1012: 自己是覺得接手的人會需要讀一下好知道這可以幹嘛 04/21 00:54
11F:推 Sex5F: 為何我覺的脫褲子放屁%不好用嗎? 04/21 06:09
12F:推 sorryla: 面試官精明一點的話 就會請你解釋為何這樣比較好維護和擴 04/21 09:11
13F:→ sorryla: 充 04/21 09:11
14F:→ sorryla: 不是你覺得比較好就是比較好 要有理由才能說服人 04/21 09:11
15F:→ w0005151: 我的想法是要檢查的數字若從兩個變很多個時 04/21 09:55
16F:→ w0005151: 就不用用很長的if else if或switch case 04/21 09:56
17F:→ w0005151: 或是要從檢查是不是倍數變成其他條件 如倍數+1之類的 04/21 09:57
18F:→ w0005151: 就只要改check就好 04/21 09:58
19F:推 sorryla: 要跟第二篇的版本二比較 你的語法較複雜 有獲得甚麼優勢? 04/21 11:25
20F:→ sorryla: 如果除了炫技以外沒任何好處的話 這樣寫只會增加理解困難 04/21 11:26
21F:→ w0005151: 比較就是我說的條件增加時不用落落長的條件判斷 04/21 11:33
22F:→ w0005151: 不過我沒軟體業面試經驗 大大是覺得單純的寫法較吃香? 04/21 11:35
23F:推 steve1012: 你不用if 但要很多handle 吧 04/21 11:44
24F:推 steve1012: 為了省if 而已 用container + lambda 反而更複雜 可能 04/21 11:49
25F:→ steve1012: 要想要怎麼說服人這樣比較好 04/21 11:49
26F:推 steve1012: 然後Scott Meyers 有建議用lambda 就夠 不要用bind(c+ 04/21 11:51
27F:→ steve1012: +14) 04/21 11:51
28F:推 sorryla: 第二篇的版本二 條件增加也只要多一個if 你的也要加新的 04/21 12:07
29F:→ sorryla: handle 所以並沒有比較有優勢 面試的白板題盡量以簡潔、 04/21 12:10
30F:→ sorryla: 邏輯清晰為主 寫太複雜去表達同樣邏輯的東西會自找麻煩 04/21 12:10
31F:→ sorryla: 而且白板是題沒辦法查資料的 寫越多東西越可能語法錯誤 04/21 12:11
32F:→ sorryla: 文法錯誤雖然不是大問題 但在面試官眼中還是會多少扣分 04/21 12:12
33F:→ w0005151: 是的 謝謝各位的意見 小弟是個很想進軟體業的自學者 04/21 12:47
34F:→ w0005151: 很需要各位專業人士的意見 04/21 12:47
35F:→ w0005151: 另外steve大說的是在Modern Effective C++嗎 04/21 12:48
36F:推 steve1012: 嗯嗯 04/21 13:10
37F:推 gmoz: 如果我是你同事我會覺得簡單幾行有需要搞得這麼嚴重嗎XD 08/06 17:39







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP