文章

34

粉丝

109

获赞

7

访问

20.0k

头像
喝饮料 题解:c语言实现。贪心算法,一开始就将最实惠的那类酒降序排列
P1478 云南大学机试题
发布于2024年3月1日 15:10
阅读数 569

#include <stdio.h>

typedef struct
{
    double mi, wi;
} node;

void sort(node node[], int n)
{
    // 冒泡?
    for (int i = 0; i < n; i++)
    {
        int max = i;
        for (int j = i + 1; j < n; j++)
        {
            if (node[j].mi / node[j].wi > node[max].mi / node[max].wi)
            {
                max = j;
            }
        } // 找到最小的那个

        // 移动元素
        double temp1 = node[max].mi;
        double temp2 = node[max].wi;
        node[max].mi = node[i].mi;
        node[max].wi = node[i].wi;
        node[i].mi = temp1;
        node[i].wi = temp2;
    }
}

int main()
{
    int x, n;
    while (scanf("%d %d", &x, &n) != EOF)
    {
        if (x == -1 && n == -1)
        {
            break;
        }
        else
        {
            node node[n];
            for (int i = 0; i < n; i++)
            {
                scanf("%lf %lf", &node[i].mi, &node[i].wi);
          ...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发