1 条题解
-
2
额额额这题隶属于阴间了:因为这道题看上去有点算贪心,但是没贪心那么复杂: 解析: 在及大多数情况下大船是最优先的,因为按6个人来算 则: 大船100 中船75*2 小船60*3 也就是说在没有余数的情况下大船无疑是最优选 但是!!! 当剩余5人,4人,3人,2人,1人呢? 5人:大船最优解 100元 4人:大船最优解 100元 3人:中船最优解 75元 2人:小船最优解 60元 1人:小船最优解 60元 此时我们就发现,大船首选,然后再根据剩余人数来判断余下的最优解代码:
#include <bits/stdc++.h> using namespace std; int main(){ int m; cin >> m; int w = 100 - m; int a = m / 6; int b = m % 6; int c = 0, d = 0; if(b == 1 || b == 2){ d = 1; }else if(b == 3){ c = 1; }else if(b == 4 || b == 5){ a = a + 1; } int a1 = w / 6; int b1 = w % 6; int c1 = 0, d1 = 0; if(b1 == 1 || b1 == 2){ d1 = 1; }else if(b1 == 3){ c1 = 1; }else if(b1 == 4 || b1 == 5){ a1 = a1 + 1; } int x = a + a1; int y = c + c1; int z = d + d1; cout << x << " " << y << " " << z << endl; return 0; }
信息
- ID
- 30332
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 9
- 标签
- 递交数
- 14
- 已通过
- 3
- 上传者