分宿舍(2050程式設計比賽)HDU6492

2021-09-19 15:01:51 字數 1015 閱讀 9144

分宿舍2050的線下活動吸引了很多心懷夢想的年輕人。

小伙們打算組團去參加。他們一共有 n+m+2k 個人,包括 n+k 個男生,m+k 個女生,其中 k 對男女生為異性情侶,現在他們要找房間住。房間有三種型別,雙人間 a 元一間,三人間 b 元一間,這兩種只能同性一起住。情侶間能住一對異性情侶,一間 c 元。除了情侶間以外,其他房間都可以不住滿。

求最少花多少錢,能讓小夥伴們都有地方住。

input

第一行乙個整數 t (1≤t≤50) 表示資料組數。

接下來 t 組資料,每組資料一行 6 個整數 n,m,k,a,b,c,其中 0≤n,m,k≤103,0≤a,b,c≤109。

output

對於每組資料輸出一行乙個數,表示所有人住下來所需要的最小花費。

sample input

23 0 1 1 3 3

3 3 2 1 6 2

sample output36

思路:暴力,從0對情侶拆開不住情侶間,到k對都住情侶間遍歷一遍,對每一次都遍歷一遍三人間住的間數,因為資料量很大,所以這個初始化的值不能為0x3f3f3f3f

我做的時候分了好多情況,然後錯了

ac**:

#include #include#include #include using namespace std;

#define inf 0xffffffff

#define ll long long

ll n,m,k,a,b,c;

ll go(ll n,ll m,ll i)

ans1=min(ans1,tmp);

}up=m/3;

if(m %3 != 0)

up++;

for(ll i=0;i<=up;i++)

ans2=min(ans2,tmp);

}return ans1+ans2+i*c;

}int main()

return 0;

}

宿舍誰最高? 15分

學校選拔籃球隊員,每間宿舍最多有4個人。現給出宿舍列表,請找出每個宿舍最高的同學。定義乙個學生類student,有身高height,體重weight等。輸入格式 首先輸入乙個整型數n 1 n 1000000 表示n位同學。緊跟著n行輸入,每一行格式為 宿舍號,name,height,weight。宿...

7 5 宿舍誰最高? 20 分

學校選拔籃球隊員,每間宿舍最多有4個人。現給出宿舍列表,請找出每個宿舍最高的同學。定義乙個學生類student,有身高height,體重weight等。輸入格式 首先輸入乙個整型數n 1 n 1000000 表示n位同學。緊跟著n行輸入,每一行格式為 宿舍號,name,height,weight。宿...

7 5 宿舍誰最高? 20 分

學校選拔籃球隊員,每間宿舍最多有4個人。現給出宿舍列表,請找出每個宿舍最高的同學。定義乙個學生類student,有身高height,體重weight等。輸入格式 首先輸入乙個整型數n 1 n 1000000 表示n位同學。緊跟著n行輸入,每一行格式為 宿舍號,name,height,weight。宿...