日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

程序写不好,总理当到老!

發(fā)布時(shí)間:2025/3/16 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序写不好,总理当到老! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

導(dǎo)讀:自古英雄出少年,可惜不想當(dāng)總理,只想當(dāng)個(gè)程序員。

最近HackNext網(wǎng)站有一個(gè)貼子引發(fā)網(wǎng)友熱議,一位叫Lihaoyi的作者宣布自己剛剛寫了一本叫《動(dòng)手Scala編程》的書,表示自己的書寫得不錯(cuò),書理論強(qiáng)項(xiàng)目多,希望喜歡Scala的朋友多捧場。

HackNext 網(wǎng)站上李浩毅的貼子

整本書約400多頁,將在2020年夏季正式發(fā)行,包括電子書,平裝和精裝幾個(gè)版本。跟帖網(wǎng)友非常欣賞作者寫的樣章,并為他的技術(shù)和文筆贊口不絕。

有的人在后面一堆跟帖中寫了一句:“沒有人告訴你,他的祖父創(chuàng)建了這個(gè)國家”。

原來這位Lihaoyi就是現(xiàn)任新加坡總理李顯龍的兒子——李浩毅。

李浩毅的Twitter頭像

據(jù)公開資料顯示,李浩毅出生于 1989 年,畢業(yè)于麻省理工學(xué)院(MIT),計(jì)算機(jī)科學(xué)和工程學(xué)位。他還是 Scala 社區(qū)的主要貢獻(xiàn)者。

李浩毅簡歷 https://lihaoyi.com/resume

李浩毅的個(gè)人網(wǎng)站上自稱,其開源項(xiàng)目在 Github 上有超過 10,000 Star,每個(gè)月的下載次數(shù)超過 7,000,000 次。自稱擅長用 Scala 來構(gòu)建分布式后端系統(tǒng)、高性能Web 應(yīng)用程序等。

有同學(xué)不禁感嘆,他一直關(guān)注的技術(shù)博主,原來是這樣的身份證和背景。「這是我人生接觸的第二個(gè)家里比我有權(quán)家里黃金遍地智商比我強(qiáng),還比我努力的人!」

還有一些網(wǎng)友調(diào)侃說,要是李浩毅不好好寫代碼,就只有回去當(dāng)坡縣的縣長了。

李顯龍也是會(huì)編程的

將門無犬子,李浩毅的父親現(xiàn)任總理李顯龍同志,也是有計(jì)算機(jī)科學(xué)文憑的,還是一位響當(dāng)當(dāng)?shù)募夹g(shù)極客。

40年前,獲得一個(gè)數(shù)學(xué)學(xué)位后,在父親的忠告下我繼續(xù)深造計(jì)算機(jī)科學(xué)。他說這里有未來。后來事實(shí)證明,他是對(duì)的。

我最后的一個(gè)項(xiàng)目是數(shù)年前用C++寫的數(shù)獨(dú),或許這也說明我過時(shí)了。目前我的孩子都在IT圈內(nèi),兩個(gè)畢業(yè)于MIT。其中一個(gè)拿起一本書給我看,上面寫著:“想要更上一層樓,你該學(xué)習(xí)Haskell。”我想,有一天這會(huì)是我退休時(shí)的讀物。

這是李顯龍的一段演講,令人驚訝的不僅僅是他會(huì)寫一些C++代碼,還有他知道Haskell是什么。新加坡的網(wǎng)友如是說:

作為一名新加坡人,我自豪于我政府的趨勢方向。并且我驚訝他們竟然提到了Haskell/LYAHFGG和C++,Balakrishnan部長是怎么找時(shí)間去涉獵硬件和編程的?這些高級(jí)公務(wù)員不應(yīng)該是非常忙的嗎?

雖然美國總統(tǒng)奧巴馬曾經(jīng)寫過一個(gè)“Hello World”程序,但只能算是“打醬油”。

李顯龍?jiān)谝淮蝿?chuàng)業(yè)者論壇上透露,他最后編寫的程序是一個(gè)解決數(shù)獨(dú)問題的程序。

演講結(jié)束后,很多人要求李顯龍公開那段代碼,他在Facebook上發(fā)布了一個(gè)截屏,如下圖示。

李顯龍?jiān)贔acebook上曬的C++程序代碼

“這段程序很簡單,只能以命令提示符的形式運(yùn)行。”他寫道,“逐行輸入數(shù)據(jù)后(例如1-3-8---6),求解器就會(huì)輸出答案(如果有多個(gè)答案,則會(huì)輸出所有答案)、搜索答案所花費(fèi)的步驟,以及一些搜索統(tǒng)計(jì)數(shù)據(jù)。”

李顯龍還提供了一個(gè)指向Google Drive的鏈接,里面包含了這段代碼及其輸出示例和編譯后的Windows可執(zhí)行文件。

以下是整段程序源代碼,感興趣的同學(xué)可以品鑒一小下:

#include "stdio.h"int InBlock[81], InRow[81], InCol[81];const int BLANK = 0; const int ONES = 0x3fe; // Binary 1111111110int Entry[81]; // Records entries 1-9 in the grid, as the corresponding bit set to 1 int Block[9], Row[9], Col[9]; // Each int is a 9-bit arrayint SeqPtr = 0; int Sequence[81];int Count = 0; int LevelCount[81];void SwapSeqEntries(int S1, int S2) {int temp = Sequence[S2];Sequence[S2] = Sequence[S1];Sequence[S1] = temp; }void InitEntry(int i, int j, int val) {int Square = 9 * i + j;int valbit = 1 << val;int SeqPtr2;// add suitable checks for data consistencyEntry[Square] = valbit;Block[InBlock[Square]] &= ~valbit;Col[InCol[Square]] &= ~valbit; // Simpler Col[j] &= ~valbit;Row[InRow[Square]] &= ~valbit; // Simpler Row[i] &= ~valbit;SeqPtr2 = SeqPtr;while (SeqPtr2 < 81 && Sequence[SeqPtr2] != Square)SeqPtr2++ ;SwapSeqEntries(SeqPtr, SeqPtr2);SeqPtr++; }void PrintArray() {int i, j, valbit, val, Square;char ch;Square = 0;for (i = 0; i < 9; i++) {if (i % 3 == 0) putc('\n', stdout);for (j = 0; j < 9; j++) {if (j % 3 == 0) putc(' ', stdout);valbit = Entry[Square++];if (valbit == 0) ch = '-';else {for (val = 1; val <= 9; val++)if (valbit == (1 << val)) {ch = '0' + val;break;}}putc(ch,stdout);}putc ('\n', stdout);} }void ConsoleInput() {int i, j;char InputString[80];for (i = 0; i < 9; i++) {printf("Row[%d] : ", i + 1);scanf("%s", InputString);for (j = 0; j < 9; j++) {char ch = InputString[j];if (ch >= '1' && ch <= '9')InitEntry(i, j, ch - '0');}}PrintArray(); }void PrintStats() {int i, j, S;printf("\nLevel Counts:\n\n");S = 0;while (LevelCount[S] == 0) S++;i = 0;while (S < 81) {int Seq = Sequence[S];printf("(%d, %d):%4d ", Seq / 9 + 1, Seq % 9 + 1, LevelCount[S]);if (i++ > 4){printf("\n");i = 0;}S++;}printf("\n\nCount = %d\n", Count); }void Succeed() {PrintArray();PrintStats(); }int NextSeq(int S) {int S2, Square, Possibles, BitCount;int T, MinBitCount = 100;for (T = S; T < 81; T++) {Square = Sequence[T];Possibles = Block[InBlock[Square]] & Row[InRow[Square]] & Col[InCol[Square]];BitCount = 0;while (Possibles) {Possibles &= ~(Possibles & -Possibles);BitCount++;}if (BitCount < MinBitCount) {MinBitCount = BitCount;S2 = T;}}return S2; }void Place(int S) {LevelCount[S]++;Count++;if (S >= 81) {Succeed();return;}int S2 = NextSeq(S);SwapSeqEntries(S, S2);int Square = Sequence[S];int BlockIndex = InBlock[Square],RowIndex = InRow[Square],ColIndex = InCol[Square];int Possibles = Block[BlockIndex] & Row[RowIndex] & Col[ColIndex];while (Possibles) {int valbit = Possibles & (-Possibles); // Lowest 1 bit in PossiblesPossibles &= ~valbit;Entry[Square] = valbit;Block[BlockIndex] &= ~valbit;Row[RowIndex] &= ~valbit;Col[ColIndex] &= ~valbit;Place(S + 1);Entry[Square] = BLANK; // Could be moved out of the loopBlock[BlockIndex] |= valbit;Row[RowIndex] |= valbit;Col[ColIndex] |= valbit;}SwapSeqEntries(S, S2); }int main(int argc, char* argv[]) {int i, j, Square;for (i = 0; i < 9; i++)for (j = 0; j < 9; j++) {Square = 9 * i + j;InRow[Square] = i;InCol[Square] = j;InBlock[Square] = (i / 3) * 3 + ( j / 3);}for (Square = 0; Square < 81; Square++) {Sequence[Square] = Square;Entry[Square] = BLANK;LevelCount[Square] = 0;}for (i = 0; i < 9; i++)Block[i] = Row[i] = Col[i] = ONES;ConsoleInput();Place(SeqPtr);printf("\n\nTotal Count = %d\n", Count);return 0; }

網(wǎng)友評(píng)論:李顯龍總理已晉升新一代男神

包子精是咸菜餡的:人家有劍橋的diploma in computer science。可怕的是他還有劍橋的1st class honor in Math 和哈佛的Master in public admin。。。

smart is the new sexy啊。給龍男神跪了。

美拉洋洋:人家總理是劍橋數(shù)學(xué)系的,這點(diǎn)東西不算什么

尋常夢中:總理您歇歇、這種問題就留給小的們解決吧

JJUNSU:程序員還是有前途的【居然能當(dāng)上總理

ChorizoGelato:仰觀學(xué)霸的世界我們亞歷山大。

清仔_Veslyn:我靠,不好意思說自己會(huì)寫程序

BELL-Sherlocked:早上被刷屏了....有點(diǎn)厲害......畢竟是劍橋出身的大學(xué)霸。真是全面響應(yīng)smartnation國策從我做起從領(lǐng)袖做起

CyanZero:難怪我倆同事早上一直在吱哇亂叫的掃描代碼找bug

__EATING:Smart is the new sexy

大白:程序?qū)懖缓?#xff0c;總理當(dāng)?shù)嚼?#xff01;

21CTO綜合程序員那些事,海外社交媒體等,一并致謝。

推薦閱讀:

?

他,用了8年,從程序員到CTO再到天使投資人蝶變記

?

剝開浮躁表面,直指金融科技內(nèi)心

?

二本畢業(yè)生逆襲成大廠架構(gòu)師的成長心得

?

波波老師: 解決微服務(wù)的數(shù)據(jù)一致性分發(fā)問題?

? ?END ? ?? #接力技術(shù),鏈接價(jià)值#

新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎(jiǎng)!定制產(chǎn)品紅包拿不停!

總結(jié)

以上是生活随笔為你收集整理的程序写不好,总理当到老!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。