金山辦公2014暑期實習招聘筆試之旅

6月4日晚上,同學在羣裏貼出了金山辦公2014暑期實習招聘的截圖,我看了之後頓時來了精神,都這個節骨眼了還有暑期實習招聘,難得啊!注意了下發布的職位,有C++開發工程師,JAVA開發工程師,IOS開發工程師,測試和其他職位,正好前幾天搗鼓了一份簡歷出來,於是選了JAVA職位,投了出去。

之後就一直等啊等,但是等到6號上午,都沒收到反饋。心想莫不是JAVA職位已經滿了?於是又改成C++的,結果兩個小時後,收到7、8日在長沙蔘加WPS校招宣講會短信通知。

因爲投的是JAVA,所以這幾天特意找了本java的基礎書看了看,又找了本數據結構和算法的,但是直到參加筆試,都沒打開過。

6月7日下午考完期末考試後,趕緊收拾收拾直奔長沙理工大學。到達時已經是六點多鐘了,然後同學陪我草草吃了晚飯,便匆匆忙忙奔向筆試地點。到考場時剛好開始筆試。整個考場稀稀落落坐了一些人,講臺上一個長得還算漂亮的眼鏡MM在講着考試的注意事項。這跟我心中所想的招聘會相去甚遠,頓時就有點小失落。最令人坑爹的是,WPS來長沙招聘是不招JAVA的,只有C++和測試兩個職位。我對那個MM說出了自己的疑問後,她跟我解釋了下,然後又問我還打不打算參加筆試,我想,既來之則安之,看看是什麼題目吧。

接到試卷後,翻了翻,只有兩頁紙,題目不算多。前面還是屬於調查之類的題型,然後是c/c++混合在一起的單選題,之後是五道綜合題。單選題比較簡單,還好沒有把C++全忘掉,快速完成單選後,開始進攻綜合了。粗略閱讀了下五道題目,感覺跟平時做的數據結構和算法題很不一樣,很多都沒見識過,不知道怎麼下手。沒辦法,一道一道啃吧。

下面憑我記憶給出五道綜合題:

綜合題(長理站)

1.給定 一個int型的整數,編程輸出其LED顯示屏形式。如0爲:

 --- 

|    |

|    |

|    |

 ---

每個數字之間用空格分開。


2.給定一個矩形和圓,求其相交部分的面積。函數原型是:

double area(Circle c,Rect r);

提示1:考慮十字交叉線與圓相交的情況,再組合解決問題

提示2:如果沒有思路,給出一種近似求解的方案,並給出精度。


3.假如有一個工程要進行移植,需要將源代碼中字符串格式爲L“content of string”替換成_X("content of string"),如:

L"hello"->_X("hello");

L”I am \“ you "->_X("I am \“ you ")

假如你是該工作的負責人,你將如何解決該問題?

可以使用任何文本編輯器,任何工具和開發語言,寫出關鍵步驟。如果用開發語言(腳本語言),給出關鍵代碼。


4.有一個類:

BitMap{

int width();//圖像寬度

int height ();//圖像高度

Color color();//獲取某一點的顏色(很奇怪爲什麼沒參數)

void setColor(Color v);//設定顏色

}

和一個函數原型:

fill(BitMap &bmp,int x,int y,Color c);

試完成該函數,實現:修改給定點的連續區域的顏色爲給定的顏色。在該區域內任意點到指定點存在一條路徑,該路徑上的顏色一致。(這裏記不太清了,可能落掉了一句話)


5.題目大意:c++的編譯器將源程序最終編譯成XXX.EXE文件(XXX,如果在Linux上)。假如有如下文件:

head1.h,head2.h,src1.cpp,src2.cpp,main.cpp

試給出某編譯器將這5個文件編譯成XXX.EXE文件詳細過程,如果熟悉某編譯器的話,請給出編譯過程中每一步的命令行。


勉勉強強做完這五道題,交卷時考場已經沒幾個人了。

好吧,第一天算是吸收經驗,第二天,我幾經週轉,又來到了校招第三站——湖南大學。

跟長沙理工大學不同,我在湖大沒有同學,沒辦法,只有自己找宣講會地點咯。一路問過去,總算順利找到了教室。

剛走到教室門口,看到三個人已經在裏面了,於是問他們是不是WPS宣講會地點,得到確認後,其中一個人突然說道,你不是昨天已經參加了嗎?我一看,就是昨晚在長沙理工大學的那個MM。好吧,我說我是過來參加宣講會的,而且你們也沒限制不準參加多次(之前已經打電話得到確認可以多次參加)。他們不再說什麼了,我便厚着臉皮找個位置坐了下來。

果然有宣講會就是不同,到了下午兩點,整個大教室就都坐滿了人,後面還站着很多同學,看來金山WPS校招還是吸引了不少人。這次主持的是另外一個MM,美貌程度比昨天那個更勝一籌。前面差不多一個小時,是他們的工作人員在介紹WPS和金山企業。三點之後,筆試開始了。

拿到試卷後,發現綜合題的第一題以及最後一題跟昨天的筆試題相同,於是刷刷刷寫完,開始攻其他三道題。今天這個題目明顯比昨天的要靠譜,至少思路什麼的都有一點,不至於像丈二和尚摸不着頭腦一般。悲劇的是,考到最後還剩半個多小時時,肚子開始疼起來了!勉強把三四題的思路寫了下,就匆忙交卷去解決大事了。

至此,我人生中第一次筆試就這麼過去了,結果要等到十天後才會出來,希望能過吧!


湖大站綜合題(2,3,4題,1,5題同長理站)

2.有一個函數:

void unique(std::vector<int> &v);

用來給數組去重,試寫一段測試代碼檢查其正確性。

提示1:儘可能找出bug

提示2:你的代碼應該返回int型,0表示測試通過,1表示出錯。


3.有如下函數原型:

void transferToChinese(int num);(ps:函數名記不太清了,但是無關緊要)

該函數把小於一億的int型數字轉換成中文表示,如:

17:一十七;

110:一百一十;

12345:一萬兩千三百四十五;

10101:一萬零一百零一

提示:注意零的情況。

拓展:考慮縮寫情況,如:

17:十七


4.給出小球完全彈性碰撞公式:

V1 '=……

v2 '=……

(額,公式不記得了^_^)

和狀態類:

Ball{

double mass;//球的質量

double speed;//當前小球速度,大於零表示沿座標軸正方向

double p; //小球所處的座標

}

以及函數:

process(Ball &ball_1,Ball &ball_2,int T,還有一個參數不記得了);

實現該函數,求T秒後小球的狀態。


ps:由於記憶原因,可能部分題目描述不太清楚,甚至有錯誤,大家看看就好。


發佈了35 篇原創文章 · 獲贊 12 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章