一道淘汰85%面試者的百度開發者面試題


     最近在CSDN上看到一道題,據說淘汰了85%的面試者(只是據說而已)。心血來潮,隨便寫個算法,該算法很簡單,主要就是考察應聘者是否注重細節。題干如下:

    依序遍歷0到100閉區間內所有的正整數,如果該數字能被3整除,則輸出該數字及‘*’標記;如果該數字能被5整除,則輸出該數字及‘#’標記;如果該數字既能被3整除又能被5整除,則輸出該數字及‘*#’標記。

    該題主要考察了如下幾點。

    1.  正整數。不知這題怎么出了,這是數學的概念。看到有很多答案從0開始掃描,0是整數,非正非負,應該從1、2或3開始掃描都可以。

    2.  題目給出了3個條件,應該先考慮條件苛刻的,也就是同時被3和5整除的,然后再考慮被3或被5整除的。

    3.  閉區間(這TM的玩文字游戲呢!)。所以不能用for(int i = 0; i < 100;i++)。有很多家伙習慣了,條件都是用“<”。

    下面是題目的答案。

    

public class SF
{
    public static void main(String[] args)
    {
        for(int i = 1; i<= 100; i++)
        {
            if(i % 3 == 0 && i % 5 ==0)
            {
                System.out.print("*#");
            }
            else if(i % 3 == 0)
            {
                System.out.print("*");
            }
            else if(i % 5 == 0)
            {
                System.out.print("#");
            }
            
        }

    }

}

 

最后輸出的結果如下:

*#**#**#*#**#**#*#**#**#*#**#**#*#**#**#*#**#**#*#**#


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM