導航:首頁 > 程序命令 > 程序員晉級決賽

程序員晉級決賽

發布時間:2023-03-10 14:44:39

『壹』 和楊超越做,騰訊、網易的程序員竟然爭著為楊超越做游戲

這個世界太瘋狂。

看到有人用它當頭像的時候,我也並不意外;

“超越杯”是一場編程大賽,由楊超越的粉絲群體主辦,要求參賽者以楊超越為主題開發編程作品。事件一經曝光,就憑借楊超越與程序員的詭異組合登上了微博、知乎和貼吧熱榜的第一。

在決賽前一天,楊超越本人也在微博上為他們打call。

得知游戲是這場大賽當之無愧的主角,進入決賽的10款作品有8款都是游戲之後,我對它產生了濃厚的興趣。

它草根嗎?絕對草根。我剛剛進群,就有一名17歲,名叫杉杉的高中女生希望我寫一段話:“超越看看你學生黨的粉絲,為你和祖國發光發亮。少年強則國強”

而且杉杉顯然不是最年輕的選手,因為前阿里程序員,現農民工子弟小學的支援編程教師阿達指導4名3年級小學生,做出了一款跑酷游戲《超越沖沖沖》,還闖進了決賽。

比賽的勝利標准也十分草根:投票。由於投票鏈接不太好找(我在網上足足搜索了10分鍾),參與投票的人數有限,彈幕甚至圍繞幾個項目“是否刷票了”展開了一番爭論。有參賽者向我抱怨:“投票消耗了大家很多熱情,我們是非常不情願的,現在又要投票,有些成員特別不積極,直接跑路了……”

直播頁面的彈幕刷新極快,從未停止

可你又不能說超越杯不夠專業,因為許多老司機都隱藏在參賽隊伍當中。除了從業10年的原畫師,滿臉鬍子的美國金融行業程序員之外,騰訊、網易的程序員同樣隨處可見,而且他們參與的幾款項目都進了決賽。

例如用虛幻4製作的硬核ACT:《超越傳說》的主創就是網易的實習生,此前他嘗試獨立做過冷兵器吃雞、FPS、TPS等游戲,目前在浙大攻讀計算機圖形學的研究生學位,他說自己試著在作品中融入了黑魂和只狼的部分元素。

騰訊的參與則更為直接:騰訊課堂是超越杯決賽的直播支持方,他們邀請了騰訊的技術專家作為評委(比如魔方工作室群的一名技術總監),還在項目展示結束後,請專家講解騰訊從T1到T6的“程序員升級之路”。即便主持人自嘲為了讓自己接這個活兒,“主辦方說給我2000Q幣”,也無法緩解那種專業到開始無聊的氛圍。

騰訊游戲魔方工作室群引擎中心技術總監,《游戲引擎架構》譯者

這種草根和專業的沖突也體現在贊助方提供的獎品上面。獲獎隊伍既能獲得倩碧護膚品、康師傅奶茶、多芬洗發水以及楊超越的周邊禮品,又能獲得cherry鍵盤或電腦外設,騰訊課堂課程禮包以及騰訊的內推名額。快消、娛樂圈、硬體和職場產品就這樣詭異地結合在了一起,恐怕也只有與楊超越相關的活動才能做得到了。

在決賽前,我采訪了闖入決賽作品《超越幻想錄》的主創青衫隱隱,她是一名學習外國語言文學的大三學生,從來沒有接觸過游戲開發,但因為這場比賽,開始嘗試用專業的思維做一款游戲。在她的話語中,你可以進一步了解選手們參加這項神奇比賽的歷程,也更能理解他們的內心。

青衫隱隱口述:

我們現在是糊透了,就是邊吃瓜邊看比賽,反正我們也得不了第一……哎怎麼突然輪到我們做采訪了?

進了決賽後天天都在投票,我們之前是第三,現在好像是第五?真的剛不過。沒有防刷票的機制的時候,哎喲我的天呢,各地都有大刷子。本來我們只想在粉絲平台內部消化一下,但後來發現大家都在拉票,就還是拜託父母幫忙,還有組員為了投票,在年級、學校群里發投票鏈接。現在是都隨便了,誰愛投誰投。

我最開始知道超越杯是在3月7日,當時上了熱搜了嘛,我就想看看有沒有隊肯收我們。結果發現並沒有,於是我們就自己成了一個隊,現在隊員有10-20個人,大家親如一家,自娛自樂,天天在那兒吹牛。

我們這個組很神奇,大多是學生,彼此在現實中都不認識,而且都是村民——村民你知道什麼意思嗎?就是粉絲(楊超越曾介紹自己是全村的希望,後來他的粉絲便自稱村民,而粉絲圈則是楊村)。

我是學計算機的嗎?得了吧,我是學外國語言文學的。但我平時喜歡寫個小說啊,畫個畫啊,也喜歡玩游戲,還靠輔助混上了王者段位,所以一直想做楊超越的衍生品,比如小說、漫畫,還有游戲——我很喜歡游戲,因為它能部分地模擬人生。

《超越幻想錄》是以超越的個人經歷為樣本,講述她出道前的故事。春天是剛離家打工,夏天是進入職場,漸漸了解主播、模特行業,秋天是進入經紀公司,冬天是加入《創造101》。過程中她回遇到很多朋友,有不同的發展路線,也會提升數值,甚至通過多周目的努力C位出道,或者海外成團。

我們項目最大的創新是輿論系統,當前熱度和粉絲排名會決定她能否出道,而每次黑色事件都會讓節目的討論熱度上升,讓她吸粉,這個系統我們設定了很多演算法和模式,希望玩家可以思考偶像、輿論、社會和粉絲的關系。

很多參賽選手對超越妹妹有好感,但真不算粉絲,他們做的東西感覺是沒有靈魂的,你明白吧?比如大多素材都從商城裡找,只做了一個超越的模型,那個模型還很不像超越。他們做的是好游戲,但幹嘛要來超越杯蹭熱度呢?

我們不願意直接用商店裡的模型,系統又是原創的,所以一切都要從零開始,花了很多時間才把自己的非專業性彌補上去。別人線下10分鍾就說完的事兒,我們要說2個小時。而且只有晚上9點後大家才有自己的時間,一討論就到2-3點。

整整一個月,我都是9點工作,3點睡覺,心很累,腦子也不清楚。初賽的時候,為了趕第一期的視頻,我翹了2周的課,老師說再翹你就不用來了,直接掛了你。但這個比賽有截止日期啊,只能說翹了的課已經翹了,不再想太多。

開發的時候,我會先和大家敲定大概框架,都要實現什麼功能,怎麼安排活兒,然後分別跟文案組、美工組開會,寫大綱,分劇情,看誰是主筆,誰負責設計超越的形象,然後統一風格。後來我還要讓寫完劇情,沒事情做的文案負責宣發,寫slogan和廣告詞,做推廣,抽獎發測試資格,在微博超話里抓粉絲。

現在《超越幻想錄》已經有了20多張立繪和上萬字的劇本,也做好了功能和系統架構,閑置了很久的程序員就要寫代碼跑程序了——我們也考慮過橙光,但不想把流量都給他們,所以還是想自己做。我希望這部作品可以“無限期開發”下去,慢慢做出來。

我不太敢讓身邊的人知道自己喜歡楊超越。在現實中,讓別人知道你的楊超越的粉絲,做了一個項目,還要別人的支持是一件很羞恥,很難為情,要承受很大壓力的事情。大家覺得她沒什麼實力,所以會給喜歡她的人打上邪教、腦殘的標簽。甚至很多人說編程大賽以她的名字開頭,簡直侮辱這個比賽。但這個大賽就是為她為生,因她而起的,沒什麼配不配得上。

我有一段時間心理狀況很不好,抑鬱什麼的,看到楊超越後,我發現她也努力了,雖然很多事情還是做不好,但依舊能過得不錯,就覺得特別解壓。如果有一天這個社會允許這樣的不完美存在,我覺得會好受很多。

我也有過見超越本人的機會,但一直不太敢,她對我的意義太強了,甚至有點兒符號的性質,就是近鄉情怯——她是我精神上的故鄉。我擔心見到她之後,發現她不能承受我賦予的這么強烈的情感。如果有一天我沒有任何問題,只把她當成普通的偶像,也許會願意見她一面吧。

我不是那種狂熱的粉絲,不怎麼用微博,也沒辦法給超越很強的經濟支持。但我會用自己的技能,產出小說、漫畫、游戲來回饋她。在追星過程中,最重要的是找到自己存在的價值,找到虛擬中存在的真實。

結語

許多人解讀過楊超越,她身上承載了太多復雜的符號和母題:草根能逆襲嗎?努力有用嗎?被人喜歡就意味著優秀嗎?在現代社會生活可以真實且任性嗎?因此她可能擁有互聯網上成分最復雜的粉絲群體,這也是此前超越杯編程大賽能夠爆紅的原因。

有人覺得對於開發者來說,超越杯是一個不錯的曝光機會,有機會推動獨立游戲的發展。我不奢望這場復雜而混亂的比賽能做到這些,但我能肯定一點:這些參賽者把對楊超越的喜愛,真的轉化成了一個又一個作品。

亞軍作品《楊超越秘密雜貨鋪》

說實話,即便是闖進了超越杯的決賽,許多隊伍的表現都只是差強人意:大多數介紹VCR都十分粗糙,解說往往磕磕絆絆,講解作品像是在背課文。但你能看得出來,游戲已經成了他們的表達方式,他們在用虛擬的作品,向虛擬的符號表達真實的自己,真實的存在,真實的熱情。

偶像對人們有什麼意義?相較粉絲的付出來說,他們到底能回饋什麼?不同的時代有不同的答案。不過超越杯大賽的一句介紹文案回答了這個問題:我們的存在,就是要為自己和喜歡的人創造點什麼。

這么一想,我還真的有點兒喜歡楊超越了。

『貳』 脫口秀大會第一季冠軍

《脫口秀大會》第一季冠軍是龐博。

《脫口秀大會》第一季2017年10月17日晚收官,最終大王桂冠花落龐博,決賽中他以程序員身份爆笑解讀BUG,收獲觀眾和喜劇評審團的紛紛點贊支持,成為當之無愧的「脫口秀一哥」。

思文作為唯一女脫口秀演員一路殺進三強,雖然最終遺憾敗北但是「人不如狗開心」的段子依然讓人印象深刻,「脫口秀一姐」非她莫屬;王建國此次的表演猛料連連,透露好朋友李誕宿醉糗事,並喊話李誕「趕緊交點新朋友吧」。助陣嘉賓熱狗爆料唱嘻哈初心是為了把妹,華少則實力調侃同行張紹剛,笑點密集,全程高能。

《脫口秀大會》冠軍龐博在第四季首輪輕松晉級

龐博是第一季脫口秀大會的冠軍,第二季的第五名,第三季的第七名,總之都是名列前茅。在第四季首輪,龐博輕松獲得領笑員的四盞燈,順利晉級下一輪。龐博這次講的段子的水平真的是挺高的,其中有三個梗直擊現在年輕人的痛點。

第一個痛點就是劇本殺。這種沉浸式游戲是當下95後和00後最愛玩的游戲之一。龐博對此痛點拋出的梗是:劇本殺就是一群陌生人在各自寶貴的休息時間中,特意抽出幾個小時,然後開一下午的會。有時碰巧遇到同事,還會說這樣的胡話:這個項目是我搞黃的,但人真的不是我殺的。

第二個痛點就是當今的奶茶很受歡迎,但裡面放的東西太多了。龐博對此痛點拋出的梗是:就像兌了水的粽子,我實在喝不下去,沒辦法用八寶粥往下順了順。楊瀾老師聽到此處,毫不猶豫拍了燈。

第三個痛點就是盲盒。雖然不知道盲盒裡面裝的是什麼?但是年輕的朋友就是喜歡買它。龐博調侃道:菜市場里是不會賣盲盒的,不然都會祈禱裡面放的是一頭蒜。

同時,龐博也建議消費者在購買盲盒付款時,也採用盲盒形式,這樣做就非常公平了。消費者買到什麼全憑運氣,同樣,售賣者賣到什麼價位也全靠運氣。

龐博的精彩演出受到了四位領笑員的一致好評。楊瀾老師點評道:龐博的脫口秀技術確實很好,並且有一種歸零的心態重新開始。大張偉另類點評說:就是有荷爾蒙,你一上場,底下的小姑娘全在那尖叫。

『叄』 零基礎小白如何成為程序員需要學習哪些內容

自學編程沒那麼難。只要是理工科學生,邏輯思維好的朋友,都可以開始編程。這里有六種方法可以和你的朋友分享自學編程。這些方法足以幫助您入門和進階:0.書籍+視頻可能是學習編程最好的方式,對於初學者來說,可以通過視頻+書籍來學習。這兩種方式形成互補關系。編程教學視頻可以幫助你快速掌握編程,但通常比較生動,簡單,不系統。書是系統的,透徹的,枯燥的,所以最好的方法就是把書和視頻結合起來。


5.反復練習。編程是一門手藝,需要反復練習。沒有書和視頻能獨立實現嗎?學習的最終狀態無非就是:我沒有他,但是我的手很熟悉。近年來,IT行業變化很快。我們可以大致感受到我們使用的手機和互聯網產品的變化。我們從原來的非智能手機遷移到iPhone和安卓手機。我們從去網吧買電腦變成了6G內存2GHz的智能手機(已經超過了2010年的電腦配置)。

我們從大型PC游戲轉到了手機游戲。我們的每部手機都有將近100個應用。我們用過很多微信官方賬號,微店,mini 程序和mini游戲。我們從5元3000萬變成了隨時隨地刷小視頻,直播。我們很少用現金,因為我們不得不拿錢包取錢,有時我們想拿出10元錢,但我們真的沒有……豐富的互聯網產品(應用程序、H5、小程序、游戲等)背後。),IT其實是由日新月異的IT技術支撐的。

所以作為程序,你必須不斷學習,學習公司需要的任何技術。工作幾年,堅持學習也不算太累。畢竟經歷了幾年,很多東西都很熟悉。零基礎如何自學編程?成為/kloc-0成員需要具備哪些技能?這些年來,我開發了各種東西,做了各種編程工作。伺服器後端程序已經開發出來,需要幾種編程語言:JAVA、PHP、Node.js、Python、SQL等。已經開發了PC網頁和H5,需要Javascript,CSS3,HTML5等。開發了一個App,你需要用JAVA,SQL,HTML5。

我們開發了微信small 程序,需要CSS,Javascript,HTML等等。開發過計算機軟體,需要用到C#、Javascript、C++等。為什麼要學那麼多技術?因為不同的編程語言有不同的長處。比如玩游戲,Unity很成熟很快,很多知名游戲都是用它開發的,所以開發游戲的時候幾乎很多公司都在用它,程序會員一定要學。移動APP的開發主要使用JAVA、Swift、OC等編程語言,開發App必須學習這些編程語言。零基礎如何自學編程?成為/kloc-0成員需要具備哪些技能?

沒有接觸過技術開發的人還是不知道為什麼需要這么多編程語言。這么說吧:翻譯跟英國人說話要說英語,跟西班牙人說話要說西班牙語,跟我們說話要說中文。IT技術的編程語言和我們說的語言類似,不同的領域需要不同的語言。說了這么多,大家都知道程序員工在工作中需要的技能,以及會發展什麼。

我再簡單總結一下::程序工作人員必須掌握自己崗位的編程語言。比如做安卓APP,一定要掌握JAVA。一般掌握編程語言是不夠的。為了提高開發速度,還必須了解各種框架和庫。程序員工將發展什麼?會開發APP,網站,電腦軟體,微信程序等等。不過應該說,行業是有特長的,並不是所有的程序工作人員都能開發應用、網站、小程序…有些人只能懂一門技術,但可以是專家,比如資料庫專家。而且這些年我也只是個打雜的,但是各種發展都會...更多的雜工,僅此而已。

『肆』 《脫口秀大會》呼蘭是哪裡人學歷怎麼樣

呼蘭的背景很強大,來自上海的他,畢業於哥倫比亞大學,碩士學歷,早前在海外工作了很多年,職業是一名程序員。呼蘭在國外的時候就喜歡寫一些段子,只不過一直沒有機會展示。

後來呼蘭回國發展以後,一次偶然的機會接觸了「脫口秀」,他慢慢發現自己很喜歡站在台上表演,而且那種感覺讓他非常享受,因此呼蘭也更加堅定選擇走這條路了。呼蘭沒來參加《脫口秀大會》之前,他還參加過《吐槽大會》,當時他在舞台上的表演就非常出色,向觀眾拋出了許多搞笑的梗,從而給人留下了深刻的印象。

呼蘭在節目中的表演非常非常好,他的段子從頭到尾沒有一句廢話,而且梗和包袱非常密集。內容和節奏把握的也非常好,信息量很大、笑點密集,且結束的乾脆利落,有頭有尾。

『伍』 少兒編程對孩子學習有什麼好處可以參加哪些競賽

孩子學習少兒編程的學習對於孩子自身能力的提升來說有一個好的提升外,如果孩子在C++這方面成績非常不錯的話,是可以去參加信息學奧賽的,現在比較出門 的賽事有:
ICMC
CMC針對3-14歲少年兒童創客,以鮮明的「單人賽制」和「獨立完成」為特色,以真實考驗和激發選手科技實踐能力為目標的校外機器人創新活動。
2015年創辦至今,ICMC以亞洲最大的上海科技館為賽事基地,每年在上海、深圳、武漢、成都、青島、西安、廊坊等設立分站賽,已經成長為極具全國影響力的青少年機器人科創展示交流活動。
ROBORAVE
RoboRAVE 是一項由 Intel
公司主要贊助和支持的國際機器人大會,在2001年起源於美國。憑借著易上手、教育性和趣味性強等優點,RoboRAVE已發展成為一個極具影響力的國際型機器人大會,並在中國、美國、法國、西班牙、日本、阿根廷、哥倫比亞、墨西哥、捷克和印度等20多個國家建立了分會,每年吸引上萬名學生參與其中。
機器人等級考試
全國青少年機器人技術等級考試是由中國電子學會發起,面向8-18歲青少年機器人技術能力水平的社會化評價項目。機器人等級考試是見證學生技術實踐能力成長的過程,是對創新學習成果的檢驗,也給孩子們提供了一個展示自我的平台。
ROBOTEX
Robotex世界機器人大賽發源於愛沙尼亞,由塔爾圖大學、塔林理工大學兩所世界知名院校聯合發起,共同支持協辦。經過20年的發展與成長,目前已成為歐洲規模最大規格最高的機器人大賽。成為小學、初中、高中、大學、創客空間、機器人俱樂部喜愛的世界級機器人盛會。
成立以來,每年世界總決賽吸納世界各地30000+觀眾和1500+機器人參賽。優秀學員或選手不僅可以包攬獎池,還有機會獲得世界知名高校/企業的offer。
ROBOCOM
圍繞青少年特點,設計和啟動的「RoboCom國際公開賽」以機器人賽事為突破口,通過對抗類、任務類和創意類3種不同的賽事形式,將團隊協作、問題解決、科學發現等方面比賽要求相結合,從項目、程序、工程設計、延時及團隊合作入手,不僅能檢驗青少年對機器人技術的理解和掌握程度,還能最大限度地激發青少年對機器人技術的興趣,引發全社會對機器人、人工智慧等科技的關注。
BRC
「BRC」由「BRC機器人挑戰賽組織委員會」領導,清華大學、哈爾濱工業大學、北京航空航天大學指導,全球科創促進基金會、BRC組委會主辦,上海貝樂文化傳播有限公司承辦,央視中學生頻道、愛奇藝中學生頻道、今日頭條、抖音、SMG、搜狐網、新浪網、新華網、一直播等合作媒體支持。
源於國際上流行的STEM教育,國家對青少年創客教育的培養重視,以及各高校、企業對機器人專業人才的需求,BRC機器人挑戰賽(簡稱「BRC」)應勢而生。
BRC致力於打造機器人教育行業的國際化科創活動平台,檢驗和培養青少年創新創造和動手實踐能力,為未來的機器人行業儲備尖端人才。
藍橋杯
藍橋杯大賽是工信部人才交流中心舉辦的全國性專業信息技術賽事。12年來,作為首屈一指的信息技術賽事,藍橋杯吸引了北大清華在內的超過 1500
所院校、累計40餘萬名學子參賽,IBM、網路等知名企業全程參與。藍橋杯大賽塑造了領跑全國的人才培養選拔模式,並獲得了行業的深度認可。
自2016年第八屆起,賽事在原有大學生數個專業編程組別的基礎上增加了中小學創意編程組,簡稱青少組。和藍橋杯高校大賽相比,青少年編程組大賽同樣注重公正性和嚴肅性,讓個人能力出眾、邏輯思維清晰和編程創意豐富的小朋友更容易脫穎而出。

『陸』 華為面試請教,請各位前輩指教,萬分感謝!

一、優秀程序員必備七要件
程序員是一個要求技術含量很高的職業,同時要求有不斷進取的精神和不達目的決不罷休的精神狀態,以下就是簡單總結的如何做個有些的程序員,希望對各位的求職和工作能夠有所幫助。
1.踏實的工作態度。低承諾,高實現:如果你的承諾確實是管理人員想聽到的,
他就會喜歡你。但是,如果不能按照承諾及時交付軟體,他就不會再喜歡你。而且如果你沒有承諾的也超額完成,可想而知,老伴對你的印象會有多大的改變。但是切忌,如果自己真的有能力還是應該提前說出來,只要不過分誇大就好。萬事適可而止、恰到好處就好。
2、認真負責,少犯錯誤。軟體很可能會因為一個細小的錯誤而不能正常運行,所以說不要在軟體中放入錯誤,優秀的程序員不在他們的代碼中放入錯誤。盡量精準的設計,會讓你的工作事半功倍。
3、充滿熱情,努力工作。作為一個優秀的程序員是充滿熱情和努力工作的,他們具有很強的組織性,而且講究方法,他們有能力將事情結構化。此外,大多數程序員勤奮工作的熱情是令人難以置信的。他們嘔心瀝血,不眠不休就是為了最後的勝利,如果你也具備這種精神,那麼你就算半個合格的程序員。
4、有預見性,知道未知因素。看到別人看不到的未知因素,並且提前做好預備工作,這說明你至少是個有經驗的程序員。你的前途可以說是一片光明。
5、有團隊合作精神,能善於和別人相處。一般開發工作都是以小組進行的,所以一定要與小組成員友好相處,軟體開發是小組成員協調努力的結果。不要把功勞歸結為某個人,同時也不要把錯誤看作是別人的錯誤。
6、堅持到底,善始善終。其實開發軟體是一件非常辛苦的工作,所以一旦認定目標,就要朝向最終目標努力努力再努力,始終朝向最終目標。這其實也是非常重要的能力。特別是在與一些人面談工作時,你要尋找的一件事情就是在小組已經交付的產品上他實際參與的工作。具備這種能力是作為一個優秀程序員的必備條件。
7、超凡的學習能力。在軟體技術領域,技術的更新日新月異,所以作為程序員必須學習不斷涌現的技術,掌握盡可能多的技能。優秀的開發人員是渴望學習的人。善於學習的人才能在這一領域立於不敗之地。也是程序員必須具備的條件之一。

二、程序員的職業要求
一般的程序員都有四年的在專業領域的學習,需要一個在程序領域的學士學位獲得者,不論是數學方面的還是工程方面的都是可以的。大約有20%的人在這一領域的計算機科學和工程學擁有更高的學位。還有很小一部分程序員是自學的,盡管一些專業性的學校或者綜合大學可以提供,但是也需要一些別的途徑來提供相關的人才。盡管學歷是比較重要的,但是公司經常把重點放在應聘者的工作經驗上,很多剛從大學畢業的大學生雖然有引人注目的學位證書,但是他們找不到工作是因為他們缺乏經驗。一個程序員雖然有正規的學歷,但是如果一個人擁有程序設計的深厚知識背景或者豐富的工作經驗的話,那麼他的機會要比有學歷的應屆畢業生大得多。所以要盡量抓住有用的工作和實習機會,這樣的話在畢業後你就會發現,多實習讓你有更多的經驗,在找工作的時候就有更多的機會。
對於職業程序員,另外一個重要的方面就是,程序員需要不斷提升自己的業務技術,你的技術必須一直保持在一個較高的水平,並且要不斷發展,程序員也要尋找貿易的機會,要參加研討會,在周刊上發表文章和接受職業教育,這些使程序員在自己的領域中分級或者不斷並排前進。

三、一位大四程序員的面試經歷和體會
1.面試經過

大約在年前我接到了台灣瑞晟(Realtek)蘇州公司的面試通知,通知我2月21日到蘇州工業園區面試,接到面試後的幾天我把一些專業課溫習了一遍,特別是C++和數據結構,由於大學幾年裡,我一直專研這些方面,加上通過了高級程序員的考試,對於一些常用的演算法我差不多也 達到了爛熟於胸的地步,當時的感覺是如果問了我這些方面的問題我應該是沒有問題的!

21日那天我被安排在4:30面試,由一位技術人員單獨給我面試,在問了一些簡單的問題之後 ,他給我出了一道編程題目,題目是這樣的:

(由於具體面試的題目比較煩瑣,我將其核心思想提取出來分解成……(亂碼)

1) 寫一個函數計算當參數為n(n很大)時的值 1-2+3-4+5-6+7......+n
哼,我的心裡冷笑一聲!沒想到這么簡單,我有點緊張的心情頓時放鬆起來!
於是很快我給出我的解法:

long fn(long n)
{
long temp=0;
int i,flag=1;
if(n<=0)
{
printf("error: n must > 0);
exit(1);
}
for(i=1;i<=n;i++)
{
temp=temp+flag*i;
flag=(-1)*flag;
}
return temp;
}

搞定!當我用期待的目光看著面試官的時候,他微笑著跟我說,執行結果肯定是沒有問題! 但當n很大的時候我這個程序執行效率很低,在嵌入式系統的開發中,程序的運行效率很重要 ,能讓CPU少執行一條指令都是好的,他讓我看看這個程序還有什麼可以修改的地方,把程序 優化一下!聽了這些話,我的心情當時變的有點沉重,沒想到他的要求很嚴格,之後我對程序 進行了嚴格的分析,給出了改進了的方案!

long fn(long n)
{
long temp=0;
int j=1,i=1,flag=1;
if(n<=0)
{
printf("error: n must > 0);
exit(1);
}
while(j<=n)
{
temp=temp+i;
i=-i;
i>0?i++:i--;
j++;
}
return temp;
}

雖然我不敢保證我這個演算法是最優的,但是比起上一個程序,我將所有涉及到乘法指令的語 句改為執行加法指令,既達到要題目的要求而且運算時間上縮短了很多!而代價僅僅是增加了 一個整型變數!但是我現在的信心已經受了一點打擊,我將信將疑的看者面試官,他還是微笑 著跟我說:「不錯,這個程序確實在效率上有了很大的提高!」我心裡一陣暗喜!但他接著說這個程序仍然不能達到他的要求,要我給出更優的方案!天啊!還有優化!我當時真的有點崩 潰了,想了一會後,我請求他給出他的方案!然後他很爽快的給出了他的程序!

long fn(long n)
{
if(n<=0)
{
printf("error: n must > 0);
exit(1);
}
if(0==n%2)
return (n/2)*(-1);
else
return (n/2)*(-1)+n;
}

搞笑,當時我目瞪口呆,沒想到他是這個意思,這么簡單的代碼我真的不會寫嗎,但是我為 什麼沒有往那方面上想呢!他說的沒有錯,在n很大很大的時候這三個程序運行時間的差別簡 直是天壤之別!當我剛想開口說點什麼的時候,他卻先開口了:「不要認為CPU運算速度快就 把所有的問題都推給它去做,程序員應該將代碼優化再優化,我們自己能做的決不要讓CPU做 ,因為CPU是為用戶服務的,不是為我們程序員服務的!」多麼精闢的語言,我已經不想再說 什麼了!接著是第二個問題:
他要求我用一種技巧性的編程方法來用一個函數實現兩個函數的功能n為如:

fn1(n)=n/2!+n/3!+n/4!+n/5!+n/6!
fn2(n)=n/5!+n/6!+n/7!+n/8!+n/9!

現在用一個函數fn(int n,int flag)實現,當flag為0時 ,實現fn1功能,如果flag為1時實現fn2功能!他的要求還是效率,效率,效率!說實在話, 如果我心情好的話我應該能給出一種比較好的演算法,但我那時真的沒有什麼心思再想了,我在紙上胡亂畫了一些諸如6!=6*5!的公式後直截了當的跟他說要他給出他的答案!面試官也沒有 說什麼,給出了他的思路:

定義一個二維數組 float t[2][5]存入[2!,3!,4!,5!,6!},{5! ,6! ,7!,8!,9!]然後給出一個循環:

for(i=0;i<6;i++)
{
temp=temp+n/t[flag][i];
}

最後得到計算值!呵呵,典型的空間換時間的演算法!
這些總共花了50分鍾的時間,還有十分鍾我就跟他很隨意的聊聊天,聊了一些編程以及生活 的問題,那時的我已經很放鬆了,因為我知道這次面試結果只有一個:失敗。5:30的時候面試官要我等通知,於是我離開了他們公司。這就是面試的整個經過!

2.由面試想到的

真的是很失敗啊!我記得那天下好大的雨,氣溫也很低,我邊走邊想,從5:30一直走到7:30 ,全身都濕透了,又冷又餓,但是我只是一直走,腦子裡面充滿了疑惑,我也想讓雨把自己淋 醒!看到這里有些朋友可能覺得那些面試題目不算什麼如果讓自己做的話肯定能全部答對,我 肯定相信你,因為我從未懷疑過中國程序員的能力,我認為中國有世界上最好的程序員,我也 從未認為自己是高手,所以我做不出來不代表中國程序員比台灣或者別的地方的程序員差,所以我就從我的角度,我的所見所想來談一些感想:

不錯全世界都有優秀的程序員,中國也不例外,但是我疑惑的是:到底中國和台灣或者國外 的優秀的程序員的比例到底是多少?台灣我不知道,中國100個程序員里有幾個是優秀的呢?我 根本算不上,從上面的表現就足以說明一切了!是1個?5個?10個?50個?這個數字我不敢亂 猜,恐遭網友一頓痛罵,那麼我們國內有多少人學習計算機呢?拿我們學校來說,計算機97級 4個班,98級5個班,99級10個班,2000級17個班,人多了,老師怎麼辦?我們學校的做法是讓 研究生上課,然後呢?補考一抓一大把,大把大把的補考費落入了學校的口袋,還說現在的學生素質低!真是好笑,我都不知道學校這么做是為了什麼,為國內培養大量的程序員嗎?學生 們能真正學到計算機知識嗎?好了,我敢講,在我們學校學習編程學生和優秀程序員(注意我 指的是優秀,只會編幾個糟爛程序的人算不上)的比例應該是100:0.1 在這種比例下雖然我們中國學習編程的人鋪天蓋地,但是想想有多少個人能真正為中國軟體 業發展作出貢獻,有多少人能真正寫出優秀的程序名揚海外!

我從學習編程以來,不管是自學還是老師指導,從來都是解決問題就好,編出程序來就行, 我的疑惑是:我們有真正的強調過程序的效率,程序的質量嗎?我們有仔細分析過我們寫的東 西,看看有沒有可以改進的地方,看看有沒有簡單的方法來達到同樣的目的呢?我問心自問, 我發現,我從來沒有對我寫出來的程序進行過優化,最多就是進行詳細的測試,然後Debug, 但是這就足夠了嗎?
這些天我偶爾發現我曾經寫過的一個游戲,那是一年做為 其中一員時候,感覺應該拿點東西出來,然後花了一個星期的時間寫出來的!程序不算復雜,但是用到了不少數據結構的東西,也用到了一些精彩的演算法,加上windows的界面和游戲的可 玩性,寫完後受到了不少好評,我當時真的很佩服自己!
但是現在看呢:沒有一句注釋,好多 醜陋的函數名比如:void chushihua(),好多沒有必要的變數,可以用簡單語句完成工作的我 使用華麗的演算法,大量使用全局變數.....,說不好聽的話,六百多行的程序除了能運行之外就是一陀屎!如果一年前我能聽到一些反面意見的話,大概我能早一點覺悟,但是自原代碼在 網站發布以來聽到的都是贊美之詞,沒有一個人向我提出程序改進的意見,這又說明了一個什 么問題呢?很值得思考啊!

還有一個疑惑是:我們說的和做的真的一樣嗎?我在學校的時候曾經受學院指派承辦過一個 計算機大賽,請了一個老師出決賽的題目,主要是一些演算法題目,這個老師可能是我上大學以 來唯一敬佩的老師了,從程序調試到打分,對於每個程序都仔細分析其時間效率和空間效率, 然後綜合打分,四十個人的卷子,老師從下午三點一直調試到晚上十點,在有些寫的精彩的語 句後還加上批註。我真是高興很遇到這樣的老師並且和他做深入的交流,但在事後,卻發生了 一件不愉快的事,在比賽中獲得第二名的學生找到我,說他程序全部調試成功應該給他滿分, 並且應該得第一,我說不過他,最後調出了他的原程序和第一名的原程序對比,錯,兩個程 序都運行的很好,這時,那個同學開口了:「我的程序寫的十分簡捷明了,僅僅數行就完成了 題目要求,而他的卻寫了一大堆,為什麼給他的分多過給我的分。」我當時很是氣憤,如果不 是老師負責的話,那麼現在第一名和第二名的位置真的要互調了,拜託,不是程序的行數越少 程序的質量就越高,我記得我跟他大談這方面的道理,最後說服他了!哈哈,但是我,只能說 說而已,我不知道還有多少人一樣,說起來頭頭是道,但心裡卻壓根就從未重視過它!

四、優秀的編程人員應該掌握的十種編程語言
優秀的編程人員應該掌握的十種編程語言
引:位於聖地亞哥軟體編程公司Interknowlogy.com CEO Tim Huckaby表示,「我的一個導師曾經告訴我編程語言僅為一種語言。若你是一名優秀的程序編制人員,編程語言就是一些句法變換而已,並沒有其他重要部分。」

在求職過程中能夠了解多些編程語言,無疑是有很大優勢的。

確實,以量取勝是有優勢的。當然不排除存在一些恰好在合適的時間、合適的地點正好知曉合適的編程語言的情況,不過絕大部分編程者都會善意建議你階段性學習一種新語言,這對於作為一名合格的網站開發人員來說,是非常有必要的。

位於聖地亞哥軟體編程公司Interknowlogy.com CEO Tim Huckaby表示,「我的一個導師曾經告訴我編程語言僅為一種語言。若你是一名優秀的程序編制人員,編程語言就是一些句法變換而已,並沒有其他重要部分。」

不過,Huckaby表示,當時他的公司還在初創期,暫時不會考慮增添新人,不過知曉特定編程語言的入門級別人員有所例外。

Huckaby表示,「我們會聘用那些有激情、態度端正、聰明的剛從學校畢業、懂得.Net或Java語言的學生,因為這種人員,我們可以再次對他進行.Net培訓。」

加州Sebastopol市Grandview Systems的軟體開發負責人Wayne Duqaine表示,「不要只集中在一兩種語言上。當我在1969年開始時,FORTRAN、COBOL和S/360 Assembler是當時流行的語言。而今,Java、C和VB則是通用的程序編制語言。十年的時光中,有許多新語言都變成了流行語言。我粗略的計算一下,在三十年的時光中,我已經學會了近24種不同語言。」

五、幾道經典C語言筆試題
1.

int main()
{
int i, n = 20;
for (i = 0; i < n; i--)
printf("*");
return 0;
}

Change/add only one character and print '*' exactly 20 times.
(there are atleast 3 solutions to this problem :-)

2. display below like:

1
212
32123
4321234
543212345

3. search for maximum and minimum value, before save into arrange for any 5 natural number (use multiful for grammer)

ex)

save to any 5 natural number

30 20 75 15 64 <enter>

minimum : 15
maximum : 75

4. use ms-sql of join grammer. show query fot result

Table.1
ac_country
--------------------------------------
country_cd country_nm
--------------------------------------
kor koera
jpn japan
usa usa
cha china

Table.2
ac_currency1
-------------------------------------------
country_cd currency_cd currency_nm
-------------------------------------------
kor won W
jpn yen Y
usa usd US

# Result
-------------------------------------------
country_nm currency_cd currency_nm
-------------------------------------------
korea won W
japan yen Y
usa usd US

Result Query :

5.use ms-sql of join grammer. show query fot result

table.1
account
--------------------------------------
userid cost date
--------------------------------------
use01 10,000 2007-01-02
use02 5,000 2007-01-03
use05 7,000 2007-01-03
use03 5,000 2007-01-03
use01 5,000 2007-01-04
use04 5,000 2007-01-05
use02 10,000 2007-01-05
use01 1,000 2007-01-05

table.2
userinfo
-----------------------------------------------
code userid money register
-----------------------------------------------
AAA use01 8,500 2007-01-02
AAA use02 5,000 2007-01-03
AAA use03 2,000 2007-01-04
AAA use04 4,500 2007-01-05
BBB use05 5,500 2007-01-02

table.3
stateinfo
-------------------------------------
connect state indate
-------------------------------------
AAA-use01 Yes 2007-01-03
AAA-use02 No 2007-01-05
AAA-use03 No 2007-01-04
AAA-use04 Yes 2007-01-05
BBB-use05 NO 2007-01-04

#result
----------------------------------------------------------
userid money account_count account_total state
----------------------------------------------------------
use01 8,500 3 16,000 Yes
use02 5,000 2 15,000 No
use03 2,000 1 5,000 No
use04 4,500 1 5,000 Yes

Result Query :

6. show 2 query each fot result.A, result.B

table.data_table
-----------------------
F_DATE
-----------------------
2007-04-17 11:42:55.200
2007-04-18 01:45:33.403
2007-04-18 01:47:01.500
2007-04-17 11:40:15.000
2007-04-18 11:41:25.700
2007-04-18 11:41:49.420
2007-04-17 11:44:58.000
2007-04-18 11:45:23.340

#Result.A
----------
F_DATE
----------
2007-04-17
2007-04-18

Result Query :

#Result.B
----------
F_DATE
----------
2

Result Query :

閱讀全文

與程序員晉級決賽相關的資料

熱點內容
安卓手機mp3壓縮工具 瀏覽:214
程序員和交易員 瀏覽:422
怎麼變字體樣式app 瀏覽:173
名字叫湯什麼的視頻app 瀏覽:207
金屬加密鍵盤聯系電話 瀏覽:335
自製解壓牛奶盒子教程 瀏覽:62
編譯高手的圖片 瀏覽:922
單片機數碼管顯示時分秒 瀏覽:780
手指解壓最簡單的方法 瀏覽:345
韓國郵箱伺服器地址 瀏覽:967
android版本介紹 瀏覽:410
pdf文件加密軟體 瀏覽:410
長沙住房app怎麼看備案 瀏覽:603
安裝加密軟體的電腦會被監控么 瀏覽:221
java微博源碼 瀏覽:569
堆排序簡單實現python 瀏覽:461
單片機引腳與鍵盤的關系 瀏覽:132
壓縮火柴盒製作 瀏覽:38
谷歌地圖android偏移 瀏覽:214
bitlocker硬碟加密空間 瀏覽:238