拼多多2021筆試真題集

                        小編:管理員 3090閱讀 2021.06.08

                        一、[編程題]多多的數字組合:

                        多多君最近在研究某種數字組合:

                        定義為:每個數字的十進制表示中(0~9),每個數位各不相同且各個數位之和等于N。
                        滿足條件的數字可能很多,找到其中的最小值即可。
                        多多君還有很多研究課題,于是多多君找到了你--未來的計算機科學家尋求幫助。

                        輸入描述:
                        共一行,一個正整數N,如題意所示,表示組合中數字不同數位之和。
                        (1 <= N <= 1,000)

                        輸出描述:
                        共一行,一個整數,表示該組合中的最小值。
                        如果組合中沒有任何符合條件的數字,那么輸出-1即可。

                        輸入例子1:
                        5

                        輸出例子1:
                        5

                        例子說明1:
                        	
                        	
                        
                        符合條件的數字有:5,14,23,32,41
                        	
                        
                        
                        	
                        
                        其中最小值為5
                        	
                        
                        
                        輸入例子2:
                        12

                        輸出例子2:
                        39

                        例子說明2:
                        
                        
                        輸入例子3:
                        50

                        輸出例子3:
                        -1

                        例子說明3:

                        沒有符合條件的數字 (T▽T)


                        二、[編程題]多多的字符變換:


                        多多君最近在研究字符串之間的變換,可以對字符串進行若干次變換操作:

                        1. 交換任意兩個相鄰的字符,代價為0。
                        2. 將任意一個字符a修改成字符b,代價為 |a - b|(絕對值)。
                        現在有兩個長度相同的字符串X和Y,多多君想知道,如果要將X和Y變成兩個一樣的字符串,需要的最少的代價之和是多少。


                        輸入描述:
                        共三行,第一行,一個整數N,表示字符串的長度。
                        (1 <= N <= 2,000)
                        接下來兩行,每行分別是一個字符串,表示字符串X和Y。
                        (字符串中僅包含小寫字母)

                        輸出描述:
                        共一行,一個整數,表示將X和Y變換成一樣的字符串需要的最小的總代價。

                        輸入例子1:
                        4
                        abca
                        abcd

                        輸出例子1:
                        3

                        例子說明1:
                        其中一種代價最小的變換方案:
                        都修改為abcd,那么將第一個字符串X最后一個字符a修改為d,代價為|a - d| = 3。

                        輸入例子2:
                        4
                        baaa
                        aabb

                        輸出例子2:
                        1

                        例子說明2:
                        其中一種代價最小的變換方案:
                        首先將第一個字符串通過交換相鄰的字符:baaa -> abaa -> aaba,代價為0。
                        然后將第二個字符串修改最后一個字符b:|b - a| = 1。
                        兩個字符都修改為aaba,所以最小的總代價為1。

                        輸入例子3:
                        3
                        abc
                        xyz

                        輸出例子3:
                        69
                        
                        
                         
                        三、[編程題]多多的求和計算:
                        多多路上從左到右有N棵樹(編號1~N),其中第i個顆樹有和諧值Ai。
                        多多雞認為,如果一段連續的樹,它們的和諧值之和可以被M整除,那么這個區間整體看起來就是和諧的。
                        現在多多雞想請你幫忙計算一下,滿足和諧條件的區間的數量。

                        輸入描述:
                        第一行,有2個整數N和M,表示樹的數量以及計算和諧值的參數。
                        ( 1 <= N <= 100,000, 1 <= M <= 100  )
                        第二行,有N個整數Ai, 分別表示第i個顆樹的和諧值。
                        ( 0 <= Ai <= 1,000,000,000 )

                        輸出描述:
                        共1行,每行1個整數,表示滿足整體是和諧的區間的數量。

                        輸入例子1:
                        5 2
                        1 2 3 4 5

                        輸出例子1:
                        6

                        例子說明1:
                        長度為1: [2], [4]
                        長度為2: 無
                        長度為3: [1,2,3], [3,4,5]
                        長度為4: [1,2,3,4], [2,3,4,5]
                        長度為5: 無
                        共6個區間的和諧值之和可以被2整除。
                        
                        
                        
                        
                        
                         
                        
                        四、[編程題]多多的骰子組合: 
                        多多君拼團購買了N個骰子,為了方便后面進行活動,多多君需要將這些骰子進行分類。



                        兩個骰子為同類的定義是:
                        1
                        將其中一個骰子通過若干次上下、左右或前后翻轉后,其與另一個骰子對應的6面數字均相等。

                        現在多多君想知道不同種類的骰子的數量分別有多少。

                        輸入描述:
                        			
                        
                        第一行1個整數N,表示骰子的數量。
                        	
                        
                        (1 <= N <= 1,000)
                        		
                        
                        接下來N行,每行6個數字(1~6,且各不相同)
                        		
                        
                        其中第i行表示第i個骰子當前上、下、左、右、前、后這6面的數字。
                        		
                        
                        

                        輸出描述:
                        共2行:
                        第一行1個整數M,表示不同種類的骰子的個數
                        第二行M個整數,由大到小排序,表示每個種類的骰子的數量

                        輸入例子1:
                        2
                        1 2 3 4 5 6
                        1 2 6 5 3 4

                        輸出例子1:
                        1
                        2

                        例子說明1:
                        第二個骰子相當于是第一個骰子從左向右旋轉了一面得到,屬于同類。

                        輸入例子2:
                        3
                        1 2 3 4 5 6
                        1 2 6 5 3 4
                        1 2 3 4 6 5

                        輸出例子2:
                        2
                        2 1

                        例子說明2:
                        第三個骰子無法通過任何旋轉變換成第一個或第二個骰子。

                        輸入例子3:
                        10
                        2 5 1 3 4 6
                        5 4 3 2 1 6
                        1 4 6 2 3 5
                        1 5 6 3 4 2
                        6 4 2 1 5 3
                        3 6 4 5 2 1
                        1 6 3 4 2 5
                        5 1 4 2 6 3
                        6 2 3 1 5 4
                        5 3 6 1 4 2

                        輸出例子3:
                        9
                        2 1 1 1 1 1 1 1 1

                        例子說明3:
                        只有第4個骰子(1 5 6 3 4 2)與第8個骰子(5 1 4 2 6 3)屬于同一類。
                        		
                        
                        			
                        		
                        一種可能的變換方式:
                        		
                        
                        1) 首先從右向左翻轉1次
                         (1 5 6 3 4 2) -> (1 5 4 2 3 6)
                        2) 然后從上向下翻轉2次
                         (1 5 4 2 3 6) -> (6 3 4 2 1 5) -> (5 1 4 2 6 3)


                        關聯標簽:
                        少妇各种各样BBBⅩXX