2017校招真題 酒店價格

2021-08-28 06:40:53 字數 1183 閱讀 8493

題目描述

酒店房間的**錄入是通過時間段來錄入的,比如10月1日至10月7日800元,10月8日至10月20日500元,請實現以下函式int

merge(int

daterangeprices),輸入是某個酒店多個日期段的**,每個日期段(終止日期大於等於起始日期)和對應的**使用長度為3的陣列來表示,比如[0,

19, 300], [10, 40,

250]分別表示從某天開始第1天到第20天**都是300,第11天到第41天**都是250,這些日期端有可能重複,重複的日期的**以後面的為準, 請以以下規則合併並輸出合併結果:

1.相鄰兩天的**如果相同,那麼這兩個日期段應該合併

2.合併的結果應該以起始日期從小到大排序

輸入描述:

輸入資料報括多行,如樣例輸入所示。

輸出描述:

輸出資料為一行,如樣例輸出所示

示例1輸入

1 1 100

2 3 100

4 5 110

輸出[1, 3, 100],[4, 5, 110]

#include#include#includeusing namespace std;

struct node;

node data[10003];

void init();

int main()

int begin_price = data[begin].price;

int begin_cnt = data[begin].cnt;

int k = begin - 1;

while(k >= 1 && data[k].price == begin_price)

k = end+1;

while(k < 10003 && data[k].price == begin_price)

jishu++;

} int i = 0;

while(i != 10003)

int j = i;

for(;j < 10003;j++)

int k = j;

while(k < 10003 && data[k].cnt == 0)k++;

if(k != 10003)

else

i = j; }}

void init()

}

2017校招真題 幸運數

時間限制 1秒 空間限制 32768k 題目描述 小明同學學習了不同的進製之後,拿起了一些數字做起了遊戲。小明同學知道,在日常生活中我們最常用的是十進位制數,而在計算機中,二進位制數也很常用。現在對於乙個數字x,小明同學定義出了兩個函式f x 和g x f x 表示把x這個數用十進位制寫出後各個數字...

2017校招真題 騰訊 編碼

假定一種編碼的編碼範圍是a y的25個字母,從1位到4位的編碼,如果我們把該編碼按字典序排序,形成乙個陣列如下 a,aa,aaa,aaaa,aaab,aaac,b,ba,baa,baaa,baab,baac yyyw,yyyx,yyyy 其中a的index為0,aa的index為1,aaa的inde...

nowcoder 2017校招真題 保留最大的數

給定乙個十進位制的正整數number,選擇從裡面去掉一部分數字,希望保留下來的數字組成的正整數最大。輸入為兩行內容,第一行是正整數number,1 length number 50000。第二行是希望去掉的數字數量cnt 1 cnt length number 輸出保留下來的結果。輸入325 1 輸...