去哪兒網筆試題分析

2021-07-30 03:09:55 字數 1278 閱讀 1183

目錄(?

[+]

輸入n個int數,[0,n-2]表示n-1個酒店的每晚**,第[n-1]個元素是你擁有的錢。

要求輸出,能住最少的天數,且錢必須剛好花完。

若不存在匹配情況,則返回-1.

輸入描述

輸入為一行。

共n個整數,最後乙個數是擁有的錢數。以空格分隔。

輸出描述

輸出能住的最小天數,不存在則輸出-1。

輸入例子

1001 1002 1003 1004 1000

輸出例子

-1
分析:這題採用深度優先搜尋(dfs)的策略。

首先對資料進行預處理:設擁有的錢為n,先排除掉大於n的數字,再對剩下的數字進行從大到小排序。

[cpp]view plain

copy

#include

#include

#include

using

namespace

std;  

intminday = -1;  

//全域性變數

bool

cost(vector<

int> vec,

intmoney,

intday,

intno)  

if(money>no)  

return

-1;  

else

}  intmain()  

intno = vec[vec.size()-1];  

//總共的錢數

vector

>::iterator idx = vec.end();  

vec.erase(idx-1);  

sort(vec.begin(),vec.end());//對酒店住宿費用進行排序

idx = vec.end();  

cost(vec,0,0,no);  

if(minday==-1)  

cout<

cout<

return

0;  

}  

注意:該題用了深度優先的思想,也可以採用揹包問題的策略求解。具體參見部落格最少硬幣找零問題-動態規劃。

from:

去哪兒網筆試 面試

今天參加了去哪兒網春季實習生招聘的筆試,這也是讀研之後的第一次筆試。我做的是開發的題目,總體來講,筆試題目還是比較簡單的。考察的點涉及二分查詢 雜湊表的應用以及一些測試的基礎,具體題目就不提了。主要總結一下筆試之後的感想 總之,對自己讀研之後第一次筆試不滿意,也總結了一些經驗教訓。期待第一次面試,無...

去哪兒網2019秋招筆試題

1.題目描述 給出乙個由 100,100 之間整數組成的陣列,求其相加和最大的連續子陣列 輸入 乙個連續整數組成的陣列 輸出 子陣列相加的最大值 樣例輸入 1 2 3 2 4 6 樣例輸出 72.題目描述 騎士只能在3x2的格仔中以對角線的形式走,給定棋盤的大小為8x8,題目輸入起點和終點,求騎士從...

筆試練習 去哪兒筆試題

1 二分查詢 對於乙個有序陣列,我們通常採用二分查詢的方式來定位某一元素,請編寫二分查詢的演算法,在陣列中查詢指定元素。給定乙個整數陣列a及它的大小n,同時給定要查詢的元素val,請返回它在陣列中的位置 從0開始 若不存在該元素,返回 1。若該元素出現多次,請返回第一次出現的位置。測試樣例 1,3,...