Marginalman 板


LINE

今天 很難過 phone interview被洗臉 久違打開力扣找手感QQ 今天的是easy 寫個昨天的 蠻好寫的 hard爽題== 很直覺的二分搜 交集加加減減 然後就找到了 我連compress都有想到 神了 using ll = long long; class Solution { public: void select(int k, vector<ll>& coins, vector<vector<ll>>& dst){ int n = coins.size(); std::string bitmask(k, 1); bitmask.resize(n, 0); //cout << endl << k << endl; vector<ll> cur; do { ll mul = 1; for (int i = 0; i < n; i++) // [0..n-1] integers { if (bitmask[i]) mul = lcm(mul, coins[i]); } dst[k].emplace_back(mul); //cout << mul << " "; } while (std::prev_permutation(bitmask.begin(), bitmask.end())); ranges::sort(dst[k]); //compress(dst[k]); } void compress(vector<ll>& coins){ int n = coins.size(); for(int i = n-1; i > 0; i--){ for(int j = 0; j < i; j++){ if(coins[i] % coins[j] == 0){ //cout << "pop " << coins[i] << endl; coins.erase(coins.begin() + i); break; } } // coins[i] can be divide by coins[j] and no remain } //for(auto coin: coins) //cout << coin << " "; //cout << endl; } long long findKthSmallest(vector<int>& org_coins, int k) { vector<ll> coins(org_coins.begin(), org_coins.end()); ranges::sort(coins); compress(coins); int n = coins.size(); ll l = 0; ll r = coins[0]; r *= (ll)k; // k of c[0], and r/c[1] of c[1]... vector<vector<ll>> combines(n+1); for(int i = 1; i <= coins.size(); i++){ // select i coins select(i, coins, combines); } ll num = 0; while(l < r){ ll m = l + (r-l)/2; //cnt <= m coin num ll cnt = 0; for(int i = 1; i <= n; i++){ for(ll num: combines[i]){ if(num > m) break; if(i&1) cnt += m/num; else cnt -= m/num; } } if(cnt == k){ r = m; break; } else if(cnt > k){ r = m-1; } else if(cnt < k){ l = m+1; } } //cout << r << endl; ll res = 0; for(int coin: coins){ ll cnt = r/coin; res = max(res, cnt * coin); } return res; } }; -- 我覺得我真的是垃圾 面試前面20分鐘看著題目完全理解錯方向 HR一開始跟我說不考lc這種刷題的 要手搓底層套件 我就一直以為他想跟我討論架構 然後我就腦袋一片空白 靠杯這個我不會啊 問了一堆大方向的東西 他就跟我說你知道這個對解題沒幫助 我更茫了 愣在那邊不知道怎麼講話 時間快到了突然看懂要幹嘛 靠邀直接當leetcode題打就好了啊 但我那個時候剩十分鐘 更慌了 講個幾句他好像覺得我終於有點反應 然後我整個腦袋卡住 timesout 每次都是面完之後豁然開朗 為什麼這麼簡單都不會為什麼我這麼笨 但HR說的也沒錯 真的跟lc不一樣 他的題目我寫不出來 ----- Sent from JPTT on my iPad -- 很姆的咪 姆之咪 http://i.imgur.com/5sw7QOj.jpg --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.194.11 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Marginalman/M.1787418392.A.507.html
1F:→ sixB: 嗎的很久沒寫 coding style怎麼這麼像c啊醜死了 08/23 01:07
2F:推 devilkool: 大師 08/23 01:11
3F:推 oin1104: 大師 08/23 01:48







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燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP