本文**自zhangxh_doris
昨天(05.23)下午去參加了明源軟體的暑期實習宣講+筆試,第一次聽說這個行業,行業和筆試風格完全不一樣啊,5道行測智力題+1個問答+ 斐波那契數列 + 洗牌演算法(思想、流程圖、**),今年回來後線上還要做個測評,這裡先總結智力題,就當做個備忘吧。ps:查了查才發現和去年校招筆試題一樣啊汗
1.鴕鳥要運3000顆白菜穿過1000公里的沙漠,鴕鳥每次最多只能馱1000顆白菜,而且鴕鳥每走一公里要吃一顆白菜。問到終點做多能剩多少白菜?
答案:534根。(還沒自己算,比演算法還麻煩,我是估計的,結果會是3的倍數)
這個題的變種是:」乙個商人騎一頭驢要穿越1000公里長的沙漠,去賣3000根胡蘿蔔。已知驢一次性可馱1000根胡蘿蔔,但每走1公里又要吃掉1根胡蘿蔔,至多剩多少蘿蔔?「分析:最後蘿蔔的數量一定是小於1000根的
假設出沙漠時有1000根蘿蔔,那麼在出沙漠之前一定不只1000根,那麼至少要馱兩次才會出沙漠,那樣從出發地到沙漠邊緣都會有往返的里程,那所走的路程將大於3000公里,錯誤。2.老闆一根金條支付給工人7天工資,不能拖欠,不能提前付(即每天都要付1/7的金條),但金條可以流通(老闆付後,工人可以找零),至少分成幾段?那麼在走到某乙個位置的時候蘿蔔的總數會恰好是1000根。
因為驢每次最多馱1000,那麼為了最大的利用驢,第一次卸下的地點應該是使蘿蔔的數量為2000的地點。
因為一開始有3000蘿蔔,驢必須要馱三次,設驢走x公里第一次卸下蘿蔔
則:5x=1000(吃蘿蔔的數量,也等於所行走的公里數)
x=200,也就是說第一次只走200公里
第二次驢只需要馱兩次,第二次地點應該是蘿蔔數量為1000
設驢走y公里第二次卸下蘿蔔
則:3y=1000, y=333.3
此時總共走了:200+333.3=533.3公里,而剩下的466.7公里只需要吃466根蘿蔔
所以可以賣蘿蔔的數量就是1000-466=534
答案:3段 1+2+4
天數老闆金條
工人金條
第一天2,4
1第二天
1,42
第三天4
1,2第四天
1,24
第五天2
1,4第六天
12,4
第七天0
1,2,4
C 面試題 三
1.用最簡單的方法實現函式int strcmp char p1,char p2 2.a.請定義乙個指向此函式的指標 int test char p1,int ntestcount b.宣告此指標的陣列,包含10個元素。c.給陣列的第乙個元素賦值,使其指向test.d.寫出呼叫陣列的第乙個元素,執行t...
演算法面試題三
螺旋佇列問題 看清一下數字排列的規律,設1點的座標是 0,0 x方向向右為正,y方向向下為正,列如7的座標是 1,1 2的座標是 0,1 3的座標是 1,1 程式設計實現輸入任意一點座標 x,y 輸出所對應的數字。21 22 20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 1...
iOS面試題三
一 copy與retain 1 copy其實是建立了乙個相同的物件,而retain不是 2 copy是內容拷貝,retain是指標拷貝 3 copy是內容的拷貝,對於像nsstring,的確是這樣,但是如果copy的是乙個nsarray呢?這時只是copy了指向array中相對應元素的指標.這便是所...