#include#include
#include
intmain()
}
這道問題並不難,最快的想法就是2+4+8+16+32,因為第一層的printf會有兩個程序列印,第二層會增加到4個,以此往下,就得出62行。
#includeintmain()
讓我們仍然採用上題的演算法,使用乙個佇列:首先,將主程序產生子程序的位置放到佇列中:
queue = "
a b c e ";
sum = 0
;我們從佇列中取首元素a,我們分析a處產生的程序,發現它會在b, c, e三處產生子程序,我們把這三個元素插入到佇列中,並將sum+1
。queue = "
b c e b c e
"sum ++;
然後,我們從佇列中取出首元素b,b處產生的子程序稍稍不一樣,因為子程序中b所代表的fork()返回值為0,因此c得不到執行,而d會得到執行。因此,b處產生的子程序會執行d, e,將這兩個元素送入佇列,sum++:
queue = "
c e b c e d e
"sum ++;
下面,我們取首元素c,分析發現,c處產生的程序會執行d, e,送入佇列並且sum++:
queue = "
e b c e d e d e
"sum ++;
同上一題一樣,依次這樣執行,遇到e則沒有元素入佇列,直到最後隊列為空,sum就是總共產生的程序個數。
兩道有意思的題目
碰到兩道有意思的題目,記錄一下。題目一 問,對於任意乙個正整數,是否存在乙個它的倍數全是由1和0組成?例如 1 1 1 2 5 10 2的5倍是10,10由1和0組成 3 37 111 3 的 37 倍是111,111 全部由1組成 4 25 100 4 的 25 倍是100,100 由1和0組成 ...
一道很有意思的題目
先列出 然後再開始解析 include stdafx.h include using namespace std class a class b public a void seta a data,int idx int tmain int argc,tchar argv for int i 0 i...
有意思的題目2
http狀態碼 cdn 內容分發網路是一種透過網際網路互相連線的電腦網路系統,提供高效能 可擴充套件性 及低成本的網路將內容傳遞給使用者。tcp協議是面向連線的,而http是無狀態的,面向連線和無狀態怎麼感覺好像有點矛盾呢?不矛盾,乙個是面向鏈結的,乙個是無連線的。面向鏈結的可靠些,無連線的就不那麼...