2017美團秋招筆試程式設計題 後台研發

2021-08-08 06:58:08 字數 1217 閱讀 1064

1、求所有能被7整除的數字

分析:

方法一:採用暴力解法,即兩兩數字都組合一遍對7取餘判斷的方法,演算法複雜度o(n2),會超時,提交成功率為70%。

方法二:求乙個數a前面拼接上什麼數能夠被7整除,只需進行以下操作即可:

①數a前面依次拼上0~6,變為0a,1a,2a···6a。

②依次判斷這7個數能否被7整除

②以1a為例,若1a等被7整除,則a前面拼的數b,只要滿足b%7==1,則ba能被7整除,因為b%7==1,所以ba總能轉化為1a,即ba也能被7整除。

**如下:

#include

using

namespace

std;

const

int maxn = 100001;

int a[maxn];

int sum[7];//記錄餘數0-6的數的個數

int getlen(int x)//求乙個數的長度

return ans;

}long

long ****(int x, int y)//將數x乘上10的y次方,為了連線兩個數用

return ans;

}int main()

for (int i = 0; i < n; i++)

}sum[a[i] % 7]++;

}cout

<< totalnum << endl;}}

2、點燈泡比賽

這道題還沒有理清楚,做的時候寫了幾個案例發現最後乙個燈泡如果為『1』則alice贏,為『0』則bob贏,嘗試了下就ac了。

**如下:

#include

using

namespace

std;

int main()

if (v[n - 1] == 1)

cout

<< "alice"

<< endl;

else

cout

<< "bob"

<< endl;}}

美團點評2017秋招筆試程式設計題 題解

昨晚臨時做了下美團2017年的校招題 純屬無聊 感覺美團的題就做得很舒服了,考想法,量小,只要你的idea夠好,就幾行,學習了!大富翁遊戲,玩家根據骰子的點數決定走的步數,即骰子點數為1時可以走一步,點數為2時可以走兩步,點數為n時可以走n步。求玩家走到第n步 n 骰子最大點數且是方法的唯一入參 時...

題解 美團點評2017秋招筆試程式設計題

順序從第四題開始寫到第一題 給出兩個字串 可能包含空格 找出其中最長的公共連續子串,輸出其長度。輸入描述 輸入為兩行字串 可能包含空格 長度均小於等於50.輸出描述 輸出為乙個整數,表示最長公共連續子串的長度。示例1輸入 abcde abgde 輸出 2分析 列舉各種長度的各種情況肯定是要超時的 那...

美團點評2017秋招筆試程式設計題 大富翁遊戲

大富翁遊戲,玩家根據骰子的點數決定走的步數,即骰子點數為1時可以走一步,點數為2時可以走兩步,點數為n時可以走n步。求玩家走到第n步 n 骰子最大點數且是方法的唯一入參 時,總共有多少種投骰子的方法。輸入描述 輸入包括乙個整數n,1 n 6 輸出描述 輸出乙個整數,表示投骰子的方法 輸入例子1 6輸...