我也是5.。。 int usen = 1; //用的小伞 int usem = 0;//用的大伞 int time1= 1;//时间 void func(int c, int n, int m) { if (c <= 0) return ; int backp = 2 * usen + 3 * usem; if (c - backp <= 0) return; if (m <= backp) {//大伞少于人数 usem = m; if (backp - m < n) usen = backp - m; else usen = n; } else {//大伞多于人数 usem = backp; //伞数 = 人数 usen = 0; } time1+= 2; func(c - backp, n, m); } int main() { int n; cin >> n; vector<vector<int>> useVector; while (n--) { vector<int> tempVector; int c, n, m; cin >> c >> n >> m; tempVector.push_back(c); tempVector.push_back(n); tempVector.push_back(m); useVector.push_back(tempVector); } vector<int> result; for (int i = 0; i < useVector.size(); i++) { func(useVector[i][0], useVector[i][1] + 1, useVector[i][2]); result.push_back(time1); time1 = 1; } for (auto i : result) { cout << i << endl; } return 0; }
点赞 评论

相关推荐

不愿透露姓名的神秘牛友
10-26 16:30
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-25 12:43
点赞 评论 收藏
分享
牛客网
牛客企业服务