多多公司每天給員工提供免費的三餐,而小多由於習慣性賴床,所以他從來吃不
到早餐。
今天公司提供了n套中餐和m套晚餐,每種**分別有乙個熱量值x和美味值y。
小多想知道,在滿足美味值之和不少於t的情況下,最少可以攝入多少熱量值?
注意:每頓飯最多只能選擇一種**,小多可以選擇只吃一頓飯甚至不吃飯。
輸入描述:
第一行三個整數n,m,t,分別表示中餐種數,晚餐種數以及小多需要滿足的最
少美味值
然後n行第i行兩個整數xi和yi,表示第i套中餐的熱量值和美味值
最後m行第j行兩個整數xj和yj,表示第j套晚餐的熱量值和美味值
輸出描述:
乙個整數,表示小多在這兩頓飯的美味值之和不少於r的前提下,最少攝入的熱
量值如果小多兩頓飯的美味值之和無論如何都無法達到t, 則輸出-1
示例1輸入輸出示例僅供除錯,後台判題資料一般不包含示例
輸入519
9149
3123
6598輸出4
說明只吃中午的第2種套 餐,不吃晚餐
示例2輸入輸出示例僅供除錯,後台判題資料般不包含示例
輸入110
3121
輸出|。
說明選擇一頓都不吃
示例3輸入輸出示例僅供除錯,後台判題資料一般不包含示例
輸入3310
1125
3724
4869輸出5
說明選擇第3種中餐,和第1種晚餐
輸入|複製
21431
2112
輸出複製
--1說明
❽無論怎麼選,美味值都達不到4,所以輸出-1
備註:
對於508的資料: 1 <= n,m,xi, yi, xj,yj <= 1,000,0<= t <=
2, 000
對於1008的資料: 1 <= n,m,xi, yi,xj,yj <= 100,000, 0 <= t
<= 200, 000
#include #include#include#include#include#include#include#include#include #includeusing namespace std;
bool cmp1(vector&a,vector& b)
int main()
for(int i=0;i>y[i][0]>>y[i][1];
}sort(x.begin(),x.end(),cmp1);
sort(y.begin(),y.end(),cmp2);
int u=0;
int y_min=int_max,res=int_max;
for(int i=0;i=t)
if(y[j][1]>=tt)
else break;}}
if(res==int_max) cout<<-1
}
拼多多筆試題解析
120分鐘,共四道程式設計題。1.輸出乙個陣列a最長的 山谷 子陣列b的長度。山谷是指b 0 b 1 b i 1 b i 思路 對每個數,向左搜尋,若比當前數大,則一直搜尋。向右搜尋,若比當前數大,則一直搜尋。如下 def findsubnum nums ans 0 for i in range 1...
2018 8 5拼多多筆試題2 數字分組
輸入描述 輸入為一行,包含乙個字串形式的正整數 輸出描述 輸出為一行,找出經過 拆分 和 變化 後的所有組合數目 拆分操作 將乙個字串拆分成兩部分 變化操作 分別在這兩部分中加上乙個小數點或者不加 最後分別形成乙個整數和小數 形成的小數和整數滿足以下要求 1.不可包含多餘的字首0,即010和010....
拼多多筆試題 棋盤石子障礙物
題目 有個長方形的棋盤,每個格仔可能是以下三種情況,a,放有障礙物,不可移動。b 放置著小木塊,c 格仔為空 如果把棋盤豎起來,小木塊會向下掉落,直至落到障礙物上或者落到障礙物上疊加著的小木塊上,如果底部沒有障礙物時,則會掉出棋盤。請問棋盤的最終狀態。輸入描述 第一行包括2個整數n,m n 1,m ...