81分4个WA(#6没WA)求dalao帮助
查看原帖
81分4个WA(#6没WA)求dalao帮助
1079265
IcyfirstChen楼主2024/3/29 20:09
#include <bits/stdc++.h>
using namespace std;

struct Pen {
	int num;
	int price;
	double perprice;
};

void sort(Pen a[]) {
	int i, j, k;
	for (i = 0; i < 3; i++) {
		k = i;
		for (j = i + 1; j < 3; j++) {
			if (a[k].perprice > a[j].perprice) k = j;
		}
		if (k != i) {
			Pen t = a[k];
			a[k] = a[i];
			a[i] = t;
		}
	}
}

int solve(int n, Pen p) {
	int sum = 0;
	int per = n / p.num;
	if (per * p.num < n) {
		sum = (per + 1) * p.price;
	}
	else {
		sum = per * p.price;
	}
	return sum;
}

int main() {
	ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	int n;
	int sum = 0;
	Pen pencile[3];
	cin >> n;
	for (int i = 0; i < 3; i++) {
		cin >> pencile[i].num >> pencile[i].price;
		pencile[i].perprice = pencile[i].price / pencile[i].num;
	}
	sort(pencile);
	if (n / pencile[0].num) {
		sum = solve(n, pencile[0]);
	}
	else {
		sum = pencile[0].price;
		for (int j = 1; j < 3; j++) {
			sum = min(solve(n, pencile[j]), sum);
		}
	}
	cout << sum;
	return 0;
}

WA点是1 16 18 19,求大佬看一下是哪里错了TT

2024/3/29 20:09
加载中...