4 条题解
-
0
#include<bits/stdc++.h> using namespace std; #define Min(a, b) a < b ? a : b int main(){ int n, a, p, m = INT_MAX; cin >> n; for(int i = 0; i < 3; i++){ cin >> a >> p; m = Min(m, ceil(1.0 * n / a) * p); } cout << m; return 0; }
没必要的繁琐写法
#include <bits/stdc++.h> using namespace std; struct p { int price; int amount; int need; int cost; }pencil[3]; bool cmp(p a, p b) { return a.cost < b.cost; } int main() { int n; cin >> n; for(int i = 0; i < 3; i++) { cin >> pencil[i].amount >> pencil[i].price; pencil[i].need = ceil((double)n / pencil[i].amount); pencil[i].cost = pencil[i].need * pencil[i].price; } sort(pencil, pencil + 3, cmp); cout << pencil[0].cost; return 0; }
更新:优化码风
-
-2
#include<cstdio> #include<cmath> using namespace std; int main(){ float n_student=0,n_pencil=0,money,smoney=0,money_temp=0;int i=1; scanf("%f",&n_student); scanf("%f%f",&n_pencil,&money); smoney=ceil(n_student/n_pencil)*money; while(i<3){ scanf("%f%f",&n_pencil,&money); money_temp=ceil(n_student/n_pencil)*money; if(money_temp<smoney) smoney=money_temp; i++; } printf("%.0f",smoney); return 0; }
- 1
信息
- ID
- 874
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 1
- 标签
- 递交数
- 279
- 已通过
- 162
- 上传者