導航:首頁 > 編程語言 > 微軟面試編程題

微軟面試編程題

發布時間:2023-03-02 03:49:34

java面試題:一個人早上八點上山,晚上八點到達山頂。第二天早上八點下山,晚上八點到達山底。

java面試題的解析方式(思路如下):

public static void main(String[] args) {

// TODO Auto-generated method stub

int up = 8;

int down = 8;

while(up<=20){

if((up == 20-6) &&(up == 20-6)){

System.out.println("在"+up+"時到達同一地點");

break;

}

up += 1;

down += 1;

}

}

微軟面試題的背後

微軟的奇葩面試題答案並不重要,重要的是思考過程,而思考過程體現了你是否擁有公司所看重的能力,不僅是微軟,其他公司的面試也是為了測試你的某種能力,如果你提前培養了這種能力,相當於知道了面試的「考綱」,在面試中自然就從容不迫,游刃有餘了。

平時要知道轉化能力是看透問題,然後找到解決方案的能力。所以轉化能力最重要的是如何看透問題,也就是你思考問題的方式。

Ⅱ 一個微軟公司的編程面試題

為了容易說明,我們先做些字元上的約定。設兩個數字分別為a和b。甲知道它們的和x = a + b,乙知道它們的積y = a * b。

首先,甲問乙:「你知道是那兩個數嗎?」乙說:「不知道」。這說明什麼呢?
乙是知道兩個數的積y的。如果這個數y分解為a和b的方式只有1種(比如34 = 2 * 17),那麼乙顯然就知道這兩個數是什麼了。因此,通過這句話,我們必須篩選出所有「有2種可能組合以上的y值」,我們稱之為R1,乙知道的數字y肯定在R1這個集合里。同時,「有2種可能組合以上的y值」對應的分解後的a和b可以組成一個集合S1:因為有些數字乘起來根本無法組成R1里的數字。這個集合S1就是兩個數字篩選一次後的結果。

然後乙又問甲:「你知道是那兩個數嗎?」甲說:「也不知道」。這又說明什麼呢?
注意這句話已經是第2句話了,根據理性假設,甲現在已經和我們一樣篩選出了集合S1。但是同樣的,他雖然知道兩個數的和x,但是在集合S1里卻仍然有兩種以上的組合可能性。我們可以篩選出「S1中有2種可能組合以上的x值」,稱之為R2。同時,利用R2中的x值,可以在S1中再篩選出分解後的a和b組成的新集合S2。這個集合S2是第2次篩選後的結果。

然後乙立刻說:「那我知道了」。
這說明,在集合S2中,乘積y只有一種分解方法。我們只要找到這種分解就可以了。當然,這樣做可能仍然有多個解,因為乙是知道y是幾的,但我們並不知道。我們稱這個y的集合(「S2中有1種可能組合的y值」)為R3,R3的可能分解為S3。

然後甲又說:「那我知道了」。
這說明,在集合S3中,他所知道的分解x = a + b也只有1種。這時計算得到的a和b就是我們所要的答案。

我寫的比較啰嗦,不知道你能不能看懂…… 你先看著,我稍後把程序貼上。

Ⅲ 微軟面試題:1——100000(十萬)之間的數字有多少個9(註:99是兩個9)Int整數,不包含帶小數點的。

輸出結果

1-100000之間,9出現的個數為50000

演算法思路:

(1)先將1-n 的整數全部轉化為 n 個字元串。

(2)統計每個字元串中,字元串"9"出現的個數;累計即可。

閱讀全文

與微軟面試編程題相關的資料

熱點內容
程序中什麼命令用來輸入單字元 瀏覽:59
php是否有數據 瀏覽:141
虛擬雲伺服器是什麼意思 瀏覽:279
vb是編譯性語言嗎 瀏覽:209
json格式用什麼編譯器 瀏覽:319
word轉pdf代碼 瀏覽:802
單片機中如何編程 瀏覽:739
cad常見的快捷命令 瀏覽:625
伺服器端有什麼 瀏覽:325
文件夾正在使用如何重命名 瀏覽:378
單片機觸摸 瀏覽:875
qq收藏夾在手機哪個文件夾 瀏覽:755
為什麼app的密碼總是不正確 瀏覽:324
方舟手機版為什麼進不了伺服器 瀏覽:594
伺服器ip可以查到真實地址嗎 瀏覽:656
象棋軟體演算法 瀏覽:993
飄零加密 瀏覽:175
文件加密軟體哪個好用免費保險櫃 瀏覽:752
黑石物理伺服器是雲伺服器嗎 瀏覽:621
java讀文件一行 瀏覽:793